更新映像路径


Update image path

我对PHP编程相当陌生,我环顾四周,但我仍然感到困惑。我正在尝试更新用户表中的图像路径,但不太确定该怎么做。 这是我将图像放入数据库的代码,它可以将其插入,但我不确定如何更新数据库中的图像图片路径以使用新插入的图像,而不是用户在创建帐户时选择的图像。

// Make sure we didn't have an error uploading the image
($_FILES[$image_fieldname]['error'] == 0)
or handle_error("the server couldn't upload the image you selected.",
$php_errors[$_FILES[$image_fieldname]['error']]);
// Is this file the result of a valid upload?
@is_uploaded_file($_FILES[$image_fieldname]['tmp_name'])
 or handle_error("you were trying to do something naughty.  Shame on you!",
"upload request: file named " .
"'{$_FILES[$image_fieldname]['tmp_name']}'");
// Is this actually an image?
@getimagesize($_FILES[$image_fieldname]['tmp_name'])
 or handle_error("you selected a file for your picture " .
"that isn't an image.",
"{$_FILES[$image_fieldname]['tmp_name']} " .
"isn't a valid image file.");
// Name the file uniquely
$now = time();
while (file_exists($upload_filename = $upload_dir . $now .
'-' .
$_FILES[$image_fieldname]['name'])) {
$now++;
}
// Finally, move the file to its permanent location
@move_uploaded_file($_FILES[$image_fieldname]['tmp_name'], $upload_filename)
 or handle_error("we had a problem saving your image to " .
"its permanent location.",
"permissions or related error moving " .
"file to {$upload_filename}");
$insert_sql = "UPDATE users set user_pic_path WHERE user_id = $user_id =
replace(user_pic_path, '$upload_filename', '$upload_filename' );
//insert the user into the database
mysql_query($insert_sql);
</code>

编辑:我缺少一个" 我修复了,现在没有SQL错误,它将图片放入数据库,但不替换数据库中的图像路径。 我一直在弄乱 $insert_sql,但它仍然没有使用新的图像路径更新数据库,我该怎么办? 这是我的新更新代码:

<code>
$insert_sql = "UPDATE users WHERE user_id = $user_id set user_pic_path =
replace(user_pic_path, '$upload_filename', '$upload_filename')";
</code>

在最后一行中,插入 SQL 的测试:

$insert_sql = "UPDATE users WHERE user_id = $user_id set user_pic_path = replace(user_pic_path, '$upload_filename', '$upload_filename')";
// check the query
echo $insert_sql."<br />";
//insert the user into the database
mysql_query($insert_sql);

然后,您可以观察即将运行的查询,在PHPMyAdmin中对其进行测试,确定它应该是什么。对于其他关键变量也值得这样做。更好的是,你应该编写一个"调试"函数,记录服务器上的文件中发生的事情,以便在发生错误时,你可以跟踪它的详细信息,包括每个文件中关键变量的值。