MySQL/PHP更新查询未执行
我测试了update语句中的变量,并检查了是否建立了数据库连接,但是查询没有运行,您能告诉我代码中的错误吗MySQL/PHP更新查询未执行,php,mysql,database,Php,Mysql,Database,我测试了update语句中的变量,并检查了是否建立了数据库连接,但是查询没有运行,您能告诉我代码中的错误吗 for($i=0; $i <= $numcourses; $i++){ echo '<div class="new'.$i.'" id="new'.$i.'"><label>'.$course_names[$i].'</label> <input name="edit'.$i.'" type="submit" value="E
for($i=0; $i <= $numcourses; $i++){
echo '<div class="new'.$i.'" id="new'.$i.'"><label>'.$course_names[$i].'</label>
<input name="edit'.$i.'" type="submit" value="Edit" /><input name="delete'.$i.'" type="submit" value="Delete" /><br /></div>';
$name="edit".$i;
if (isset($_POST[$name])){
echo '<input name="text" type="text" value="'.$course_names[$i].'" /><input name="save'.$i.'" type="submit" value="Save"/>';
}
$name2="save".$i;
if (isset($_POST[$name2])){
include "includes/open.php";
$newname=($_POST['text']);
$int=$i+1;
$query = "UPDATE course SET cname = '".$newname."' WHERE cid = '".$int."'";
mysql_query($query) or die(mysql_error());
include "includes/close.php";
}
}
更新:Thanx Marc B,添加或删除错误;向我显示了代码中的错误,一切正常,我已回到正轨。您在查询调用中没有错误处理:
mysql_query($query) or die(mysql_error());
^^^^^^^^^^^^^^^^^^^^^^
这将告诉您查询执行是否有任何问题。在元级别上,您对数据库非常开放,因此在进一步使用代码之前,您最好先阅读相关内容并解决问题。您在哪里连接到数据库 使用mysql_连接字符串主机名、字符串用户名、字符串密码';要连接到数据库,然后在使用mysql\u select\u db选择数据库后执行查询
cID是整数吗?在update语句中,在我看来就像一个字符串,尝试回显每个查询,并通过直接在数据库中执行来检查其有效性。首先,您应该删除额外的查询;在$name=编辑$i 那么,您如何发布这些值?我在代码中没有看到属性,因此无法发布 而且,一切都在一个for循环中$newname=$_POST['text'];从未设置过。也许可以用以下方式代替:
if (isset($_POST[$name2]))
试试这个:
if ($name2!="")
您是否尝试过在数据库sans PHP中运行查询?你收到了什么错误消息…?如果你需要更多信息来帮助我解决这个问题,请让我知道。这就是为什么我要求提供错误消息…好的。。。因此,您正在尝试更新记录,同时使用递增的值。您确定这些“cid”匹配吗?因为您刚刚开始,请忘记所有关于mysql\u查询等的内容。转到MySQLi和prepared语句等。mysql_*的东西都不推荐使用。或者会是soonAaaah,好吧,我不知道。我添加了你的代码,它没有选择任何数据库,因此可能没有建立连接,thanx。去看看我是否能让它工作,将更新。在这种情况下,那将是一个丢失的mysql\u select\u db调用。如果你根本没有连接,它会说没有连接或类似的东西。永远不要假设查询调用成功。即使SQL语句本身是100%有效的,也有太多其他原因导致无法检查失败。我在includes中建立了连接,它在我的代码中丢失,导致了错误。
if ($name2!="")