ذخیره نشدن در دیتابیس
با سلام!
من میخوام وقتی میدر سایت یکی از گذینه هارو انتخاب میکنه اون گذینه در دیتابیس ذخیره بشه اما هر کاری کردم نشد
۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۱۰ ۱۱ ۱۲ ۱۳ ۱۴ ۱۵ ۱۶ ۱۷ ۱۸ ۱۹ ۲۰ ۲۱ ۲۲ ۲۳ ۲۴ ۲۵ ۲۶ ۲۷ ۲۸ ۲۹ ۳۰ ۳۱ ۳۲ ۳۳ ۳۴ ۳۵ ۳۶ ۳۷ ۳۸ ۳۹ ۴۰ ۴۱ |
<?php $rang = $_REQUEST["reder"]; if( $_SERVER[ 'REQUEST_METHOD' ] == 'POST' ) { $dsn = 'mysql:dbname=admincolor;host=localhost;port=3306'; $username = 'root'; $password = ''; try { $db = new PDO( $dsn, $username, $password ); $db->exec( "SET CHARACTER SET utf8" ); } catch( PDOException $e ) { die( 'رخداد خطا در هنگام ارتباط با پایگاه داده:<br>' . $e ); } $stmt = $db->prepare( "INSERT INTO color ( $rang ) VALUES ( coloradmin )" ); $stmt->bindValue( ۱, $_POST[ 'reder' ] ); $stmt->execute(); $signup = true; } else { $signup = false; } ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link type="text/css" href="css/font-awesome.min.css" rel="stylesheet" /> <!-- AM Menu CSS --> <link type="text/css" href="css/am-menu.css" rel="stylesheet" /> <!-- Custom CSS--> <link type="text/css" href="css/demo-style.css" rel="stylesheet" /> </head> <body> <form action="#" method="post"> <input value="قرمز" name="reder" type="radio" Autocomplete="off">قرمز <br> <input value="ابی" name="reder" type="radio" Autocomplete="off"> ابی <br> <input value="ok" name="oktologin" type="submit"> </form> </body><!-- This template has been downloaded from Webrubik.com --> </html> |
پاسخ ها ( 9 )
سلام
شما در کوئری Insert باید به شکل زیر عمل کنید:
یعنی باید نام فلید مورد نظر از جدول دیتابیس رو بنویسید، من الان در کوئری بالا از جدول tbl_name دو فیلد name,family رو انتخاب کردم.
ولی شما در کوئری؛ نام فیلد رو ذکر نکردید و متغیر rang$ رو نوشتید!
موفق باشید.
با سلام!
من الان کوئری رو ویرایش کردم و الان اطلاعات در دیتابیس ذخیره میشن اما نه درست!
فیلد coloradmin خالی می مونه و هیچ چیز توی اون ذخیره نمیشه!
که بتونم دوباره از دیتابیس درخواستش کنم.
سلام
کدهاتون رو که اصلاح کردید مجدد قرار بدید …
با سلام!
بفرمایید…
سلام
در خط ۱۴ غلط املایی دارید، بجای reder از redet نوشتید!
همچنین قبل از خط ۱۴ تکه کد زیر رو قرار بدید:
بعد که کد بالا رو قرار دادید، فرم رو پر کنید و ارسال کنید اگر مقدار reder دیدید قرمز یا آبی هست که درسته تکه کد را پاک کنید، اگه دیدید که مقدار NULL هست در دریافت مقادیر از input هنوز مشکل پابرجاست
موفق باشید.
با سلام!
خطا در خط ۱۴ ….
کد ها رو اونجور که گفتین ویرایش کردم اما هنوز ارور میده
کد ها….
سلام
درسته، کد زیر رو جایگذاری کنید
یه ; اضافه بود!
با سلام!
این عبارت رو نشون میده
سلام درسته پس
اون خط کد رو حذف و امتحان کنید؛ این بار باید به درستی در دیتابیس ذخیره بشه
با سلام!
هنوز جدول دیتابیس من خالی هست وهیچ چیزی در قسمت admincolor وجود ندارد
سلام
سورس کدتون رو به همراه فایل دیتابیس قرار بدید تا چک کنم
با سلام!
بفرمایید….
و
کد های صفحه php هم همون هایی هست که قبلا قرار دادم
کدهای PHP را در یک فایل PHP قرار بدید و از دیتابیس هم خروجی بگیرید و بفرستید
با سلام!
دیتابیس
و
فایل php
سلام
شما وقتی که میخواید از bindvalue استفاده کنید، دیگه نباید در کوئری مقدار رو پاس بدی، مقدار رو باید به عنوان علامت ؟ پاس بدی و بعد با bindvalue مقدار رو بگیری و از فیلتر رد کنی، بعد تو دیتابیس ذخیره کنید.
پس کوئری زیر را:
به کوئری زیر تغییر دهید:
موفق باشید.
با سلام!
بازم ذخیره نشد!
سلام
مشکلی وجود نداره و باید ذخیره بشه ..