آموزش کار با PDO
PDO یا به اختصار php data object افزونه ای برای کار با database است که می توانید آن را روی php نصب کنید. این extention (افزونه) دارای امنیت بسیار بالایی بوده و از شئ گرایی بصورت کامل پشتیبانی می کند و همچنین دارای سرعت بالاتری می باشد. همانظور که می دانید php دیگر از دستورات mysql پشتیبانی نمی کند و این دستور دیگر منسوخ شده و توصیه نمی شود، زیرا دستورات mysql دارای حفره های امنیتی بوده و اگر نمی خواهید هک شوید که قطعا همینطور است، دیگر از دستورات mysql استفاده نکنید! حتما می گویید پس از چه دستوراتی برای کار با پایگاه داده استفاده کنیم. php افزونه های mysqli و PDO را به شما پیشنهاد می دهد. این دو افزونه هردو دارای سرعت بالاتر و امنیت بیشتری نصبت به mysql بوده و از شئ گرایی پشتیبانی می کنند. البته mysqli هم از شئ گرایی بهره می برد هم از برنامه نویسی رویه گرایی که "پی-دی-او" فقط از شئ گرایی پشتیبانی می کند. البته "پی-دی-او" از ۱۲ نوع پایگاه داده مختلف نیز پشتیبانی می کند که شامل :mysqli,oracle,mssql,postgreSQLSQLserver و ... می باشد.
آموزش دستورات prepared در PDO:
در مثالی که برایتان در سایت چسبون آماده کرده ایم قصد داریم با "پی-دی-او" به بانک mysql وصل شویم.همچنین نحوه استفاده دستورات آماده prepared را آورده ایم و می گوییم چگونه پارامترها را Bind کنید:
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDBPDO"; try { //ساخت connection $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); // تنظیم حالت برخورد با خطاها $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // تنظیم query و bind کردن پارامترها $stmt = $conn->prepare("INSERT INTO MyGuests (firstname, lastname, email) VALUES (:firstname, :lastname, :email)"); $stmt->bindParam(':firstname', $firstname); $stmt->bindParam(':lastname', $lastname); $stmt->bindParam(':email', $email); // تنظیم پارامترها و اجرای query $firstname = "John"; $lastname = "Doe"; $email = "[email protected]"; $stmt->execute(); // تنظیم پارامترها و اجرای query $firstname = "Mary"; $lastname = "Moe"; $email = "[email protected]"; $stmt->execute(); // تنظیم پارامترها و اجرای query $firstname = "Julie"; $lastname = "Dooley"; $email = "[email protected]"; $stmt->execute(); echo "New records created successfully"; } catch(PDOException $e) { echo "Error: " . $e->getMessage(); } $conn = null; ?>
در این پست آموزشی با "پی-دی-او" به صورت اجمالی آشنا شده اید. در مطالب بعدی آموزش های کامل تری برای شما تدارک خواهیم دید.