PDA

View Full Version : چگونگی اینسرت کردن بر اساس ID



mamadco
سه شنبه 19 خرداد 1394, 22:12 عصر
سلام دوستان من چطوری میتونم با روش mysql ، یه مقدار رو بر اساس ایدی اینسرت کنم

مثال : مثلا من یه جدول دارم به این صورت :

علی تهران 18 ساله

محمد قم 19 ساله

رضا مشهد 17 ساله

حالا جلوی هر کدوم یه دکمه "تایید " قرار دادم (input type="sub) و میخوام که بر اساس ایدی ، مثلا مقدار 2 رو در ستون مربوطش در sql ( مثلا ستون apply) اینسرت کنه ;

علی تهران 18 ساله "تایید "

محمد قم 19 ساله "تایید"

رضا مشهد 17 ساله "تایید"

حالا من میخوام بدونم شرط اینکه وقتی دکمه زده میشه و ایدی مربوطه گرفته میشه و مقدار 2 رو اینسرت میکنه چیه ؟ ( این نکته مهمه که بر اساس ایدی باشه مثلا من میخوام علی رو تایید کنم حتما در ستون مثلا "apply" مقدار 2 اینسرت بشه نه اینکه که به همه ی ردیف ها ، در ستون "apply" مقدار 2 اینسرت بشه .

<?php if(isset($_Post['submit']){?} ?>

باورتون میشه من 5 روزه دنبال اینم که یاد بگیرم اما هیچ !

Keramatifar
سه شنبه 19 خرداد 1394, 22:43 عصر
حالا من میخوام بدونم شرط اینکه وقتی دکمه زده میشه و ایدی مربوطه گرفته میشه و مقدار 2 رو اینسرت میکنه چیه ؟ ( این نکته مهمه که بر اساس ایدی باشه مثلا من میخوام علی رو تایید کنم حتما در ستون مثلا "apply" مقدار 2 اینسرت بشه نه اینکه که به همه ی ردیف ها ، در ستون "apply" مقدار 2 اینسرت بشه .

<?php if(isset($_Post['submit']){?} ?>


دوست عزیز
من توی آنالیز سوال شما (شاید از نظر نگارشی که بذارید به پای کم سوادی بنده) مشکل دارم
الان سوالتون دقیقا چیه؟
لطفا کد کامل قرار بدید یا توضیح واضح تری بدید

hamedarian2009
سه شنبه 19 خرداد 1394, 23:00 عصر
حالا چرا میخای مقدار id داخل فیلد تایید بره معمولا ۰ و ۱ میزارن که ۱ میشه تایید و ۰ هم عدم تایید
میتونی از کوئری استرینگ استفاده کنی یعنی بیای هر اسم رو جلوش یک دکمه برای تایید بزاری که دارای یک لینک باشه مثلا به این صورت:

<a href="user.php?id=2" class="btn">تایید</a>


تو صفحه user.php هم میتونی به این صورت id رو دریافت کنی :

$id = (isset($_GET['id'])) ? intval($_GET['id']) : '';

حالا id رو میتونی با یک کوئری اینسرت کنی اگه تو کوئری هم مشکل داری بگو تا اونهم توضیح بدم

farzad-kh
چهارشنبه 20 خرداد 1394, 01:01 صبح
منظورت آپدیته اون فیلده حتما؟




<?php if(isset($_Post['submit']){
$id=mysql_real_escape($_POST['submit']);
$apply=2;
$query = "UPDATE tblname SET apply='" .$action
. "' WHERE id = " .$id ;
$result=mysql_query($query);
if ($result){ echo 'ok';}
else echo 'no';
}
?>

mamadco
چهارشنبه 20 خرداد 1394, 05:04 صبح
حالا چرا میخای مقدار id داخل فیلد تایید بره معمولا ۰ و ۱ میزارن که ۱ میشه تایید و ۰ هم عدم تایید
میتونی از کوئری استرینگ استفاده کنی یعنی بیای هر اسم رو جلوش یک دکمه برای تایید بزاری که دارای یک لینک باشه مثلا به این صورت:

<a href="user.php?id=2" class="btn">تایید</a>


تو صفحه user.php هم میتونی به این صورت id رو دریافت کنی :

$id = (isset($_GET['id'])) ? intval($_GET['id']) : '';

حالا id رو میتونی با یک کوئری اینسرت کنی اگه تو کوئری هم مشکل داری بگو تا اونهم توضیح بدم

اها فک کنم یه چیزایی داره دستگیرم میشه بخدا چند روزه دنبال جوابم !
میشه اینطوی کرد ؟

<a href="user.php?<?php echo $GET['id']; ?>" class="btn">تایید</a>


خوب وقتی تایید زده شد میخوام تو ی همون صفحه مقدار ها گرفته و پردازش بشه ، اینجا غرض میگیریم که user.php همون صفحه ای هست که جدول ها توش قرار داره .
حالا با اینی که شما گفتین اگه تایید زده بشه مقدار ایدی رو میگیره :

$id = (isset($_GET['id'])) ? intval($_GET['id']) : '';

حالا کوئریش به چه صورت میشه مهندس ؟ که مثلا همون عدد 1 رو اینسرت کنه داخل جدول و ستون مورد نظر ؟ میشه اینسرت کردن رو با روش pdo بنویسی ؟ :قلب::لبخندساده:

از بقیه عزیزان هم ممنون که برام وقت گذاشتن واقعا برام ارزش داره خیر ببینید .

hamedarian2009
چهارشنبه 20 خرداد 1394, 08:37 صبح
این لینکو باید اینجوری بنویسی

<a href="user.php?id=<?php echo $GET['id']; ?>" class="btn">تایید</a>

فیلد apply هم باید با یک کوئری آپدیت کنی


$query = "UPDATE `tbl_name` SET `apply` = '$id' WHERE `id` = '$id'";


البته رایج اینه که برای فیلدهایی مثل تایید که دوحالت دارند از صفر و یک استفاده می کنند

mamadco
چهارشنبه 20 خرداد 1394, 09:10 صبح
بله ممنون اینقد احمق بودم که نفهمیدم باید اپدیت بشه نه اینسرت از همگی ممنون حل شد خیر ببینید