数据加载中php中的数组到字符串转换
数据加载中php中的数组到字符串转换,php,sql,sql-server,Php,Sql,Sql Server,内爆仅适用于具有单一维度的数组,您传递的是多维数组。您应该能够通过将卡号放入$items数组而不是整行来解决此问题 <?php $serverName = "RAHULTCO-PC\MANTRA2005"; $url1=$_SERVER['REQUEST_URI']; header("Refresh: 1; URL=$url1"); $connectionInfo = array("Database"=>"PayTime", "UID"=>"sa", "PWD"=&g
内爆
仅适用于具有单一维度的数组,您传递的是多维数组。您应该能够通过将卡号放入$items
数组而不是整行来解决此问题
<?php
$serverName = "RAHULTCO-PC\MANTRA2005";
$url1=$_SERVER['REQUEST_URI'];
header("Refresh: 1; URL=$url1");
$connectionInfo = array("Database"=>"PayTime", "UID"=>"sa", "PWD"=>"Mantra123");
$conn = sqlsrv_connect($serverName, $connectionInfo);
$con1 = $con1=mysqli_connect('localhost','root','','gps_db');
$date = date('Y-m-d H:i:sa');
$sql = "SELECT TOP 10 CardNO FROM dbo.tmpDmpTerminalData order by In_Out_Time desc ";
/*$sql = "SELECT [CardNO]
FROM [PayTime].[dbo].[tmpDmpTerminalData] WHERE (IPaddress = '172.23.42.141' AND In_Out_Time >= '$date')";*/
$stmt = sqlsrv_query( $conn, $sql);
if( $stmt === false ) {
die( print_r( sqlsrv_errors(), true));
}
// Make the first (and in this case, only) row of the result set available for reading.
if( sqlsrv_fetch( $stmt ) === false) {
die( print_r( sqlsrv_errors(), true));
}
// Get the row fields. Field indeces start at 0 and must be retrieved in order.
// Retrieving row fields by name is not supported by sqlsrv_get_field.
if ($conn){
$items = array();
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
$items[] = $row;
}
print_r($items);
}
else{
echo "connection failed.<br />";
die (print_r(sqlsrv_errors(), true));
}
$host = "localhost";
$user = "root";
$pass = "";
$db = "gps_db";
$con = mysqli_connect($host, $user, $pass, $db);
if ($con) {
echo "Connected";
}
$query = "SELECT `user_id` FROM `gps_gatepassmaster` WHERE `punch_id` IN (".implode(',',$items).")";
$run = mysqli_query($con, $query);
if ($run == TRUE){
?>
<table border="1" width="80%" align="center">
<tr>
<td>user_id</td>
</tr>
<?php
while($data= mysqli_fetch_assoc($run)){
?>
<tr>
<td><?php echo $data['user_id'];?></td>
</tr>
<?php
}
?></table><?php
这意味着您的$items
是一个关联数组,位于第54行。
这就是(“.intlode(',',$items.”)中的其中
punch_id”;
这里您将它用作简单数组
这就是问题所在
将
$items[]=$row;
更改为$items[]=$row['CardNO'];
您使用的是MySQL还是MS SQL Server?@jarlhsqlsrv_connect()
建议他在SQL Server上我不知道第54行包含什么内容……以后请只选择与您的问题相关的标记,不要垃圾邮件发送其他标记
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
$items[] = $row['CardNO'];
}
if ($conn){
$items = array();
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
$items[] = $row;
}
print_r($items);
}