簡體   English   中英

PHP和MySQL查詢中的錯誤

[英]Error in PHP & MySQL query

我正在嘗試使用代表用戶的變量進行查詢。

這是查詢:

$sq12 = "select sum(monto) from pagos where usuario = $_SESSION['XUSUARIO']" or die(mysql_error()); 
$re2 = mysql_query($sq12,$conexion);

$_SESSION['XUSUARIO']是要在數據庫中查找的每個用戶的數據。

編輯:我按要求更改了查詢,現在它說ARRAY

或die()放在錯誤的位置。

$sq12  ="select sum(monto) from pagos where usuario = {$_SESSION['XUSUARIO']}";
$re2 = mysql_query($sq12,$conexion) or die(mysql_error());

$_SESSION['XUSUARIO']是一個數組,您需要將其格式化為查詢的字符串,如下所示:

$string = '(';
$string .= implode(',', $_SESSION['XUSUARIO']);
$string .= ')';

然后將其添加到查詢中:

"... where usuario IN $string"

您只能將標量值插值到字符串中。 例如,要使用ID數組,請使用implode (或別名join ):

<?php
$usuario = implode(',',$_SESSION['XUSUARIO']);
$sq12 = "select sum(monto) from pagos where usuario in ($usuario)"; 
$re2 = mysql_query($sq12,$conexion) or die(mysql_error());

編輯: PDO PDO PDO PDO

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM