Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 更新mysql\u查询表单cookie_Php_Mysql - Fatal编程技术网

Php 更新mysql\u查询表单cookie

Php 更新mysql\u查询表单cookie,php,mysql,Php,Mysql,我认为这在理论上应该是可行的。会吗 $sql = "UPDATE users SET credtis = credits+1 WHERE id=echo .($_COOKIE['credits_id']!='');"; if ( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql); }

我认为这在理论上应该是可行的。会吗

$sql = "UPDATE users SET credtis = credits+1 WHERE id=echo .($_COOKIE['credits_id']!='');";
if ( !($result = $db->sql_query($sql)) )  {
  message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}

您的语法不好有很多原因。试着这样做:

$id = (!empty($_COOKIE['credits_id']) ? (int) $_COOKIE['credits_id'] : 0;
$sql = "UPDATE users SET credtis = credits+1 WHERE id={$id}";
if (!($result = $db->sql_query($sql))) {
    message_die(GENERAL_ERROR, 'Could not update users table', '', __LINE__, __FILE__, $sql);
}

另外,我假设
message\u die()
是您正在使用的某个框架或API的一部分,或者是您的自定义函数。否则,正确的函数是
die()
,它不会接受所有这些参数。

您的语法错误:p
我更正了它:
$sql=“更新用户设置积分+=1,其中id=”。(isset($_COOKIE['credits\u id'])和&!empty($_COOKIE['credits\u id'])?$_COOKIE['credits\u id']:0)。"'";
这里有一个更简单的版本:
$credits\u id=0
如果(设置($\u COOKIE['credits\u id'])和&!空($\u COOKIE['credits\u id']))
$credits\u id=(int)$\u COOKIE['credits\u id']
$sql=“UPDATE users SET credits+=1,其中id=”$信用证。"'";
看这张照片!=部分,是否要在未设置cookie时返回值?

PS:

根据“hoi”,你是荷兰人吗?

是的,我是荷兰人dank voor de infolink:
www.site.com/affiliate/?id=50
制作cookie:
$credits\u id='$\u GET[“id”;setcookie('credits_id',$credits_id,time()+(3600*0.5));//3600=1小时
updatedb:
$query=“更新用户设置积分+积分-1,其中id=”。mysql\u real\u escape\u字符串($\u COOKIE['credits\u id'])。”
删除
$\u GET
周围不必要的引号(实际上是不正确的使用)。更改为:
$credits\u id=$\u GET['id']
setcookie('credits_id',$\u GET['id',time()+(3600*0.5));//3600=1小时
清洁代码位