【问题标题】:Updating to my database doesnt work in php更新到我的数据库在 php 中不起作用
【发布时间】:2013-11-20 22:22:19
【问题描述】:

我正在尝试更新我能够查看的值。它似乎没有错误,但似乎也没有任何更新。谁能帮我确定它没有更新的地方?请

<?php

 // check for errors
 ini_set('display_errors', 1);

 //calls connection
require_once('connection.php');

 //view first table
 $ResultSets = getResults("members");

 echo "<table border='1' cellpadding='6'>";
echo "<tr> <th>member_id</th> <th>first_name</th> <th>second_name</th> <th>Email</th> ";

foreach ($ResultSets as $record) {
echo "<form action=index.php method=post>";
echo "<tr>";
echo "<td>" . "<input type=text name=topic value =" . $record ['member_id'] . " </td>";
echo "<td>" . "<input type=text name=topic value =" . $record ['first_name'] . " </td>";
echo "<td>" . "<input type=text name=topic value =" . $record ['second_name'] . " </td>";
echo "<td>" . "<input type=text name=topic value =" . $record ['email'] . " </td>";
echo "<td>" . "<input type=hidden name=hidden value =" . $record ['member_id'] . " </td>";
//echo "</tr>";
echo "<input type=submit name=update value=Update>" . " </td>";
 }

echo "<table>";
echo "</form>";

 if (isset($_POST['update'])) {

$updateQuery = "UPDATE members SET first_name='$_POST[first_name]', second_name='$_POST[second_name]', email='$_POST[email]' WHERE  member_id='$_POST[hidden]'";

mysql_query($updateQuery);
}
 ?>

【问题讨论】:

  • 您确定要更新 $_POST['update'] 的设置时间吗?

标签: php mysql sql forms


【解决方案1】:

此外,您还将member_id 作为字符串传递,而我确定它是数据库中的整数。试试:

$updateQuery = "UPDATE members SET first_name='$_POST[first_name]', second_name='$_POST[second_name]', email='$_POST[email]' WHERE member_id=$_POST[hidden]";

【讨论】:

    【解决方案2】:

    您的所有输入都具有主题名称。

    echo "<td>" . "<input type=text name=topic value =" . $record ['member_id'] . " </td>";
    echo "<td>" . "<input type=text name=topic value =" . $record ['first_name'] . " </td>";
    echo "<td>" . "<input type=text name=topic value =" . $record ['second_name'] . " </td>";
    echo "<td>" . "<input type=text name=topic value =" . $record ['email'] . " </td>";
    

    需要改成

    echo "<td>" . "<input type=text name=member_id value =" . $record ['member_id'] . " </td>";
    echo "<td>" . "<input type=text name=first_name value =" . $record ['first_name'] . " </td>";
    echo "<td>" . "<input type=text name=second_name value =" . $record ['second_name'] . " </td>";
    echo "<td>" . "<input type=text name=email value =" . $record ['email'] . " </td>";
    

    【讨论】:

    • Bob,对你的 $updateQuery 做一个回显,看看 sql 的样子。这将准确地告诉您什么不起作用。我猜你没有正确找回 member_id。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-25
    • 1970-01-01
    • 2016-01-18
    • 2012-05-20
    • 1970-01-01
    • 1970-01-01
    • 2014-08-03
    相关资源
    最近更新 更多