جلسه نوزدهم PHP:

جلسه نوزدهم PHP:
آموزش کامل زبان برنامه نویسی پی اچ پی مقدماتی تا پیشرفته

در این مقاله از کدپز با جلسه نوزدهم PHP که با موضوع استخراج داده ها و همچنین حذف داده ها از پایگاه داده MySQL میباشد در خدمت شما هستیم.

در قسمت قبل در جلسه هجدهم PHP دو موضوع “دریافت آخرین شناسه در پایگاه داده MySQL “

و  “آشنایی با کاربرد دستورات آماده PHP در MySQL ” را بررسی کردیم.

نهمین جلسه از PHP پیشرفته

در پایان این جلسه:

آموزش استخراج داده ها از پایگاه داده MySQL و همچنین حذف اطلاعات از دیتابیس MySQL
را فرا خواهید گرفت.

استخراج داده ها از پایگاه داده MySQL

از دستور SELECT برای انتخاب یک یا چند  داده از روی جداول پایگاه داده استفاده می کنیم. به مثال زیر از جلسه نوزدهم PHP توجه فرمایید.

SELECT column_name(s) FROM table_name

همچنین می توانیم از کاراکتر *
برای انتخاب تمامی ستون ها از یک جدول دیتابیس نیز استفاده کنیم.

SELECT * FROM table_name

اگر نیاز به یادگیری بیشتر SQL داشتید، می توانید سری آموزش های SQL ما را دنبال کنید.

استخراج داده ها با استفاده از mysqli

مثال زیر ستون های id ، firstname و lastname را از جدول MyGuests استخراج می کند و همچنین آن ها را در صفحه نمایش می دهد. به مثال زیر از جلسه نوزدهم PHP ، که با روش ( mysqli شی گرایی ) نوشته شده است توجه فرمایید.

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
    }
} else {
    echo "0 results";
}
$conn->close();
?>

به توضیح کد های بالا از جلسه نوزدهم PHP توجه
فرمایید.

در ابتدا، ما یک کوئری SQL ایجاد میکنیم
تا ستون های id ، firstname و lastname را از جدول MyGuests انتخاب کند.
سپس در خط بعد کوئری اجرا می شود و نتایج داده ه درون یک متغیر به نام $result قرار می
گیرند.

در مرحله بعد، تابع () num_rows بررسی می کند که آیا اطلاعات تعداد یک یا تعداد بیشتری سطر برگردانده شده است یا خیر، که اگر بیشتر از صفر ردیف وجود داشته باشد، تابع () fetch_assoc تمام نتایج را در یک آرایه رابطه ایی (associative array) انتقال می دهد. که ما می توانیم با استفاده از حلقه به آن دست پیدا کنیم.

حال حلقه ()while ، به اطلاعات درون آرایه دسترسی دارد و خروجی اطلاعات را که شامل ستون های   id، firstname  و lastname می باشد را، نشان می دهد.

شما در حال آموزش و یادگیری جلسه نوزدهم PHP می باشید.

به مثال زیر توجه فرمایید. در این مثال از روش mysqli رویه ایی استفاده شده است که تقریبا همانند مثال فوق می باشد.

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = mysqli_query($conn, $sql);

if (mysqli_num_rows($result) > 0) {
    // output data of each row
    while($row = mysqli_fetch_assoc($result)) {
        echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
    }
} else {
    echo "0 results";
}

mysqli_close($conn);
?>

 

نکته : همچنین می توانیم نتیجه نهایی را در یک جدول HTML قرار دهیم:
به قطعه کد زیر از توجه فرمایید.

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    echo "<table><tr><th>ID</th><th>Name</th></tr>";
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "<tr><td>".$row["id"]."</td><td>".$row["firstname"]." ".$row["lastname"]."</td></tr>";
    }
    echo "</table>";
} else {
    echo "0 results";
}
$conn->close();
?>

استخراج اطلاعات با روش PDO ( + دستورات آماده )

ما در مثال زیر از دستورات آماده در PHP استفاده کرده ایم.

در مثال زیر ستون های id ، firstname ، و lastname را از جدول MyGuests می گیرد و آن را درون یک جدول HTML نمایش می دهد.

مثال PDO:

<?php
echo "<table style='border: solid 1px black;'>";
echo "<tr><th>Id</th><th>Firstname</th><th>Lastname</th></tr>";

class TableRows extends RecursiveIteratorIterator {
    function __construct($it) {
        parent::__construct($it, self::LEAVES_ONLY);
    }

    function current() {
        return "<td style='width:150px;border:1px solid black;'>" . parent::current(). "</td>";
    }

    function beginChildren() {
        echo "<tr>";
    }

    function endChildren() {
        echo "</tr>" . "\n";
    }
}

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $stmt = $conn->prepare("SELECT id, firstname, lastname FROM MyGuests");
    $stmt->execute();

    // set the resulting array to associative
    $result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
    foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll())) as $k=>$v) {
        echo $v;
    }
}
catch(PDOException $e) {
    echo "Error: " . $e->getMessage();
}
$conn = null;
echo "</table>";
?>

 

حذف اطلاعات از دیتابیس MySQL

حذف اطلاعات از یک جدول MySQL با استفاده از mysqli و PDO

از عبارت DELETE برای حذف یک یا چندین رکورد
در یک جدول استفاده می کنیم.

DELETE FROM table_name
WHERE some_column = some_value

توجه به عبارت WHERE در دستور DELETE : عبارت WHERE مشخص می کند
که کدام رکورد و یا رکورد ها باید حذف یشوند. درصورتی که از دستور DELETE بدون عبارت WHERE استفاده
کنیم، تمامی رکورد ها حذف خواهند شد.

حال نگاهی به جدول MyGuests می اندازیم.

مثال های زیر رکورد با id=3 را از جدول ” MyGuests ” حذف
می کند.

مثال اول از جلسه نوزدهم PHP : به صورت mysqli ( شی گرایی ):

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// sql to delete a record
$sql = "DELETE FROM MyGuests WHERE id=3";

if ($conn->query($sql) === TRUE) {
    echo "Record deleted successfully";
} else {
    echo "Error deleting record: " . $conn->error;
}

$conn->close();
?>

مثال دوم : به صورت mysqli ( رویه ایی ):

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

// sql to delete a record
$sql = "DELETE FROM MyGuests WHERE id=3";

if (mysqli_query($conn, $sql)) {
    echo "Record deleted successfully";
} else {
    echo "Error deleting record: " . mysqli_error($conn);
}

mysqli_close($conn);
?>

مثال سوم : به صورت PDO:

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    // set the PDO error mode to exception
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    // sql to delete a record
    $sql = "DELETE FROM MyGuests WHERE id=3";

    // use exec() because no results are returned
    $conn->exec($sql);
    echo "Record deleted successfully";
}
catch(PDOException $e)
{
    echo $sql . "&lt;br>" . $e->getMessage();
}

$conn = null;
?>

بعد از حذف کردن رکورد مورد نظر، جدول به این شکل در
خواهد آمد.

تبریک میگم شما موفق شدید تا جلسه نوزدهم PHP از کدپز را پشت سر بگذارید.

📝<<سه
واژه مهم و تاثیرگذار در زندگی

    ” انتخاب ” ، ” فرصت ” ، ” تغییر ”

    باید “انتخابی” درست داشته باشی؛ تا فرصتی مناسب پیدا کنی؛ و گرنه … زندگیت هیچگاه “تغییر” نخواهد کرد.  . . . . >> ☑️




سایر مقالات :

جلسه معرفیرفتن به مطلب
جلسه اول Phpرفتن به مطلب
جلسه دوم Phpرفتن به مطلب
جلسه سوم Phpرفتن به مطلب
جلسه چهارم PHPرفتن به مطلب
جلسه پنجم PHPرفتن به مطلب
جلسه ششم PHPرفتن به مطلب
جلسه هفتم PHPرفتن به مطلب
جلسه هشتم PHPرفتن به مطلب
جلسه نهم PHPرفتن به مطلب
جلسه دهم PHP - یادآوری فرم در html - فرم ها در PHP‌ - آشنایی با متد های GET_$ و POST_$رفتن به مطلب
جلسه یازدهم PHP: شی گرایی - تعریف کلاس - ساخت اشیا فراخوانی تابع عضورفتن به مطلب
جلسه پانزدهم PHP: اتصال PHP به MySQL - (PDO یا MySQL) - بستن اتصالرفتن به مطلب
جلسه هفدهم PHP : وارد کردن اطلاعات در MySQL با دو روش mysqli و PDO - به صورت رویه ای و شی گراییرفتن به مطلب
جلسه هجدهم PHP- دریافت آخرین شناسه در پایگاه داده MySQL - دستورات آماده PHP در MySQL رفتن به مطلب
جلسه نوزدهم PHP: رفتن به مطلب
جلسه بیست یکم PHP : XML - DOM - SimpleXMLرفتن به مطلب
جلسه بیست دوم PHP : رفتن به مطلب
جلسه بیست سوم PHP : پایگاه داده و Ajaxرفتن به مطلب
جلسه بیست چهارم PHP : تمارین PHP رفتن به مطلب
جلسه بیست پنجم PHP رفتن به مطلب