我有一个脚本,它更新我的表的列并在其中写入一个 id。
我需要检查该列是否为空,如果不是:我添加一个“,”。
这是脚本:
$subs = mysql_fetch_array(mysql_query("SELECT subscribed_user_id FROM users WHERE user_id=".(int)$_GET['user']));
$subs_array = array();
$subs_array=explode(',', $subs['subscribed_user_id']);
if(!in_array($_COOKIE['user_id'], $subs_array))
{
if($subs['subscribed_user_id']=='')
{
$add='';
} else {
$add = $subs['subscribed_user_id'].',';
}
mysql_query("UPDATE users SET subers=subers+1, subscribed_user_id='".$add.$_COOKIE['user_id']."' WHERE user_id=".(int)$_GET['user']);
}
我有一个想法:总是添加 ',' ,但是当我选择它时,使用的不是数组的全长,而是 array.length-2...这就是我需要建议的原因:我怎样才能改进这个脚本?
提前致谢!
最佳答案
您可以使用一个未弃用的扩展程序来改进它,例如:
PDO:
$stmt = $pdo->prepare('SELECT * FROM users WHERE username = :username');
$stmt->execute(array(':username' => $_GET['username']));
或者 MySQLi:
$query = $mysqli->prepare('SELECT * FROM users WHERE username = s');
$query->bind_param('s', $_GET['username']);
这些扩展具有内置参数化功能,可让您安全地将数据插入数据库。
关于php - 如何改进我的 php 添加脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19996801/