在链接点击时将枚举值设置为1?
有人可以请帮忙,我试图得到列'privellages'(我知道它的拼写错误),以更新我的表'ptb_permissions'当一个链接被点击。在链接点击时将枚举值设置为1?
基本上我已经做过这件事,其他东西的加载和它的工作很好,只是这不工作出于某种原因。
当用户发送查看其图片的请求时,会在其收件箱中通知用户。用户将有两个链接批准或删除请求。
,如果他们点击批准那么这应该更新0枚举科拉姆“privellages”设置为1
这是行不通的。我没有得到任何错误,我只是没有得到任何事情发生。请有人向我展示我要去哪里错误的感谢。
<a href="includes/approve_priv_pix.php?pix=<?php echo $pix['user_id']; ?>">Yes this is ok</a>
approve_priv_pix.php的内容;
<?php
require_once("session.php");
require_once("functions.php");
require('_config/connection.php');
approve_pix ($_GET['picture'], $_SESSION['user_id']);
header("Location: {$_SERVER['HTTP_REFERER']}");
?>
MySQL的功能:
function approve_pix($picture, $user) {
global $connection;
global $_SESSION;
$query = "UPDATE ptb_permissions
SET privellages='1'
WHERE id=$picture
AND to_user_id=$user";
mysql_query($query, $connection);
}
$_GET['picture']
应该$_GET['pix']
同时仔细检查您的privellages
列枚举值。
<a href="includes/approve_priv_pix.php?pix=<?php echo $pix['user_id']; ?>">Yes this is ok</a>
这里有pix
作为重点,但在approve_priv_pix.php你是从$_GET['picture']
拍照ID。假设它应该替换为$_GET['pix']
此外,不知道为什么你有链接代码<?php echo $pix['user_id']; ?>
。可能它应该是这样的<?php echo $pix['picture_id']; ?>
此外,你的代码打开sql注入。在这里:
$query = "UPDATE ptb_permissions
SET privellages='1'
WHERE id=$picture
AND to_user_id=$user";
相反的,你应该做的更好:
$query = "UPDATE ptb_permissions
SET privellages='1'
WHERE id=" .mysql_real_escape_string($picture) . "
AND to_user_id=" .mysql_real_escape_string($user);
更多mysql_real_escape_string
细节。看看该页面顶部的警告消息。 mysql扩展已被弃用,并且很快就会被删除。对于新项目,您最好使用PDO或MySQLi扩展。
另一注意:global $_SESSION;
根本不需要。默认情况下,它可以在PHP的任何地方访问。
即时消息没有得到任何错误,我只是没有得到任何东西发生
要见你应该设置error_reporting
为E_ALL(在你的ini文件,或直接在代码中)的所有错误。启用此选项后,您将看到所有通知/警告/错误。