PDA

View Full Version : سوال: درخواست اصلاح کد حذف از دیتابس-مهم



wordnet
پنج شنبه 04 اسفند 1390, 16:45 عصر
سلام

دوستان توی کد زیر اخرین رکورد های دیتابس رو میخونه کد حالا من میخوام هر کدوم از مورد ها که جلوش کلید حذف گذاشتم با کلیک روی اون حذف کنم کد زیر رو نوشتم اما نمیدونم در گوئری حذف باید چه متغیری رو بخوام برای حذف انتخاب کنه چونکه رکورد ها لیست شده و باید اونارو حذف کنه و فیلدی برای ارسال نداریم



<?php

require_once 'class/config.php';
$result = mysql_query('SELECT * FROM `post` ORDER BY `id`');

if($row = mysql_fetch_assoc($result))
{
while($row = mysql_fetch_assoc($result)) {
echo '<tr>';
echo '<td>'.$row['title'].'</td>';
echo '<td>'.$row['post'].'</td>';
echo '<td>'.'<form method="post" action="">
<input name="submit" value="حذف کن" type="submit">
</form>
';
echo '</tr>';

}

}
?>
<?php
if (isset($_POST['title'] , $_POST['post']))
{
require_once 'class/config.php';

mysql_query ("DELETE FROM `post` WHERE `title`='{$title}'");
echo mysql_affected_rows()> 0 ? 'عملیات موفقیت امیز بود' : 'ناموفق بود';
}
?>





اینم عکس نتیجه کد فوق
http://upimage.ir/images/tdpy40jucdw7s4w9s1j0.gif

MMSHFE
پنج شنبه 04 اسفند 1390, 17:37 عصر
دوست عزیز، اینطوری که نمیشه. شما این کد رو امتحان کنید:


require_once 'class/config.php';
if(isset($_GET['id'])) {
$id = is_numeric($_GET['id']) ? (int) $_GET['id']) : 0;
mysql_query ("DELETE FROM `post` WHERE (`id`='{$id}')");
header('Location: '.pathinfo(__FILE__, PATHINFO_BASENAME));
exit();
}
$result = mysql_query('SELECT * FROM `post` ORDER BY `id`');
if($result && mysql_num_rows($result) > 0) {
echo '<table>'.PHP_EOL;
while($row = mysql_fetch_assoc($result)) {
echo '<tr>';
echo '<td>'.$row['title'].'</td>';
echo '<td>'.$row['post'].'</td>';
echo '<td align="center">';
echo '<form method="get" action="">';
echo '<input name="id" type="hidden" value="'.$row['id'].'"/>';
echo '<input type="submit" value="حذف کن"/>';
echo '</form>';
echo '</td>';
echo '</tr>'.PHP_EOL;
}
echo '</table>'.PHP_EOL;
}

امیدوارم مشکلتون با این کد رفع بشه. شرمنده فرصت نکردم تست کنم، همینجوری توی Notepad نوشتم.

wordnet
پنج شنبه 04 اسفند 1390, 17:55 عصر
جسارتا خط 3 ارور داره اقا محمد وقت کردی اینو کامل توضیح بده هیچی ازش نفهمیدم همش جدیده برام:لبخند:

MMSHFE
پنج شنبه 04 اسفند 1390, 17:57 عصر
توی خط 3 قبل از : یک پرانتز بسته اضافه است.

ayub_coder
پنج شنبه 04 اسفند 1390, 19:18 عصر
گفتن اضافه شد . یعنی باید حذفش کنی :-)