1

私は今、私の間違いがどこにあるのかわかりません。私のコードは次のとおりです。

<?php

mysql_set_charset('utf8');
$result = mysql_query("SELECT * FROM obedy ORDER BY datum DESC LIMIT 30");
while ($row = mysql_fetch_array($result, MYSQL_NUM)) 
{
    $time = strtotime( $row[0] );
    $myDate = date( 'd.m.', $time );
    $w_day = date( 'N', $time );
    $ww_day = $w_day-1;
    $the_row= $row[0];

    echo "<p>" . $myDate . "&emsp;";
    echo "<input type='hidden' value='$row[0]' name='tdel'>";
    echo "<input type='text' name='menu1' id='menu1' class='input' value='". $row[1] ."' size='37'/>";
    echo "<input type='text' name='menu2' id='menu2' class='input' value='". $row[2] ."' size='37'/>";
    echo "<input type='text' name='menu3' id='menu3' class='input' value='". $row[3] ."' size='37'/>";
    echo "<input type='submit' formaction='del_menu.php' class='button' value='Smazat' />";
    echo "</p>";                    
}

mysql_free_result($result);

?>

del_menu.php

<?php

$huh = mysql_connect("juxcore.ipagemysql.com", "*", "*") or
die("Could not connect: " . mysql_error());

mysql_select_db("jux_mms");
mysql_set_charset('utf8');

$watta="DELETE FROM obedy WHERE datum = '$_POST[tdel]'";

if (!mysql_query($watta,$huh))
{
    die('Error: ' . mysql_error());
}

header('Location: http://www.juxcore.com/x/vita/menu.php');

問題は、クリックされた行ではなく、最後に表示された行が削除される理由がわかりません。それを解決する方法はありますか?

4

1 に答える 1

6

タグを使用する必要があり<form>ます:

echo "<form action='del_menu.php' method='post'><p>" . $myDate . "&emsp;";
echo "<input type='hidden' value='".$row[0]."' name='tdel'>";
echo "<input type='text' name='menu1' id='menu1_".$row[0]."' class='input' value='". $row[1] ."' size='37'/>";
echo "<input type='text' name='menu2' id='menu2_".$row[0]."' class='input' value='". $row[2] ."' size='37'/>";
echo "<input type='text' name='menu3' id='menu3_".$row[0]."' class='input' value='". $row[3] ."' size='37'/>";
echo "<input type='submit'  class='button' value='Smazat' />";
echo "</p></form>";

問題は、1つのフォームに同じ名前のアイテムを1つしか持てないことです。同じ名前の複数のアイテムを使用する場合、最後に定義されたアイテムのみがトラフになります。複数のフォームを使用してそれを解決できます。

于 2012-10-24T18:07:44.350 に答える