Ehsaan 87 ارسال شده در 24 خرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۴ سلام دوستان؛ طبق درخواست یکی از دوستان، آموزش PDO رو به صورت متنی قرار میدم. بیشتر دوستان از MySQL Improved برای اتصال به دیتابیس استفاده میکنن که به هیچ عنوان امن نیست و امنکردن اون هم کار راحتی نیست. علاوه بر این، MySQLi در کوئریهای سنگین و زیاد کم میاره. راه بهتر، سادهتر، امنتری هم هست که به نام PDO شناخته میشه. اتصال به دیتابیس خب، اولین مرحله، اتصال به دیتابیس هست. شما میتونید این دستورات رو توی یه فایل مشخص مثل init یا bootstrap بنویسید (یا هر اسم دیگه). <?php $db = new PDO( 'mysql:host=localhost;dbname=your_db;charset=utf8', 'username', 'password' ); شما میتونید به جای localhost آدرس هاست MySQL خودتون رو بزارید؛ به جای your_db اسم دیتابیستون، به جای username نام کاربری و password رمزعبور ورود به MySQL اجرای یه کوئری شما میتونید خیلی راحت یه کوئری اجرا کنید و مشتقات اون رو هم بگیرید. فقط دقت کنید که باید $db رو داشته باشید. بنابراین شما باید دستورات خودتون رو در همون فایل اجرا کنید یا اینکه هربار به دیتابیس وصل شید (تاثیری در سرعت نداره). $db->query( 'SELECT * FROM table' ); برای خروجی گرفتن میتونید به این صورت استفاده کنید: $stmt = $db->query( 'SELECT * FROM table' ); while( $row = $stmt->fetch( PDO::FETCH_ASSOC ) ) { echo $row['name'] . ' - ' . $row['content']; همچنین میتونید برای دستورات INSERT, UPDATE, DELETE از دو مثال پیش استفاده کنین. همچنین، اگه میخواید داده ای از کاربر دریافت کنید، قطعاً خطر هک وجود داره، شما میتونید به راحتی از این خطر پیشگیری کنید: $stmt = $db->prepare( 'INSERT INTO somewhere VALUES( ?, ? ); $stmt->execute( array( $name, $content ) ); شما میتونید از تراکنشها برای کوئریهای زیاد و سنگین استفاده کنید تا هم سرعت بسیار بالاتر باشه و هم امکان بازگردوندن باشه. <?php try { $db->beginTransaction(); $db->exec("SOME QUERY"); $stmt = $db->prepare("SOME OTHER QUERY?"); $stmt->execute(array($value)); $stmt = $db->prepare("YET ANOTHER QUERY??"); $stmt->execute(array($value2, $value3)); $db->commit(); } catch(PDOException $ex) { //Something went wrong rollback! $db->rollBack(); echo $ex->getMessage(); } سوالی بود، درخدمتم. موفق باشید. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Nemesis 1,846 ارسال شده در 24 خرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۴ یه سوال به نطر شما اگه در سرویس CRUD خوذمون که به عنوان وب سرویس هم استفاده میشه از Session استفاده کنیم که با دستگاه لاگین بشه کار غیر منطقی هست ؟ لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Ehsaan 87 ارسال شده در 24 خرداد، ۱۳۹۴ سازنده اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۴ خیر، فقط باید دستگاه رو به خوبی هماهنگ کنید که Session ID به هم نخوره. خود من معمولاً از RSA استفاده میکنم که البته روی هاست هایی که IP Static دارن جواب میده. ولی روی همون هاست اشتراکی شما میتونید از Session استفاده کنید. موفق باشید. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Nemesis 1,846 ارسال شده در 24 خرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۴ در خصوص RSA توضیح میدید؟ لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Ehsaan 87 ارسال شده در 24 خرداد، ۱۳۹۴ سازنده اشتراک گذاری ارسال شده در 24 خرداد، ۱۳۹۴ RSA رو با استفاده از کلیدی که روی سرور و روی موبایل بود ساختم (البته، این معمولاً وقتی کاربرد داره که دیوایسهای شما کنترلشده باشن) و RSAرو هر بار با استفاده از OpenSSL تایید صلاحیت کردم، در صورتی که صلاحیت اون مشکلی نداشت، عمل انجام میشد. موفق باشید. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
hoseinshoja 13 ارسال شده در 20 آذر، ۱۳۹۴ اشتراک گذاری ارسال شده در 20 آذر، ۱۳۹۴ اقا من بلد نیستم با دیتابیس کار کنم و این پست های بالا رو هیچی نفهمیدم لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Elyas Erfani 3,582 ارسال شده در 20 آذر، ۱۳۹۴ اشتراک گذاری ارسال شده در 20 آذر، ۱۳۹۴ اقا من بلد نیستم با دیتابیس کار کنم و این پست های بالا رو هیچی نفهمیدم خوب برادر من ۱۰۰تا اموزش هست دیتابیس انلاین هم باید اموزششو از فروشگاه بخری ی نگاهی ب تاریخ تاپیک بنداز لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.