Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.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数据库生成数组_Php_Mysql_Arrays - Fatal编程技术网

Php 从MySQL数据库生成数组

Php 从MySQL数据库生成数组,php,mysql,arrays,Php,Mysql,Arrays,我有数据库连接。我想做一个数组,但我觉得有些问题。这是我的数组代码: $var = "SELECT SUBSTRING(KayitTarihi,1,4) AS year,SUBSTRING(KayitTarihi,6,2) AS month,SUBSTRING(KayitTarihi,9,2) AS day,SUBSTRING(KayitTarihi,12,2) AS saat,SUBSTRING(KayitTarihi,15,2) AS dakika,Guc FROM Urun WHERE D

我有数据库连接。我想做一个数组,但我觉得有些问题。这是我的数组代码:

$var = "SELECT SUBSTRING(KayitTarihi,1,4) AS year,SUBSTRING(KayitTarihi,6,2) AS month,SUBSTRING(KayitTarihi,9,2) AS day,SUBSTRING(KayitTarihi,12,2) AS saat,SUBSTRING(KayitTarihi,15,2) AS dakika,Guc FROM Urun WHERE Date(KayitTarihi)=\"".$link_m."\"";

$result = $mysqli->query($var);

$data = array();
foreach ($result as $row) {$data[] = $row;}

print_r($data);

$no=1;$total_deger=count($data);
echo $total_deger;

for($i=0;$i<$total_deger);$i++){
    $xxx[i]="[Date.UTC(".$data[i]['year'].",".$data[i]['month'].",".$data[i]['day'].",".$data[i]['saat'].",".$data[i]['dakika'].",00),".$data[i]['Guc']."]";if($no < $total_deger){echo ",";}
    echo $xxx[i];
}
$var=“选择子串(KayitTarihi,1,4)作为年份,子串(KayitTarihi,6,2)作为月份,子串(KayitTarihi,9,2)作为天,子串(KayitTarihi,12,2)作为saat,子串(KayitTarihi,15,2)作为dakika,Guc从Urun开始,其中日期(KayitTarihi)为“.$link\u m.”;
$result=$mysqli->query($var);
$data=array();
foreach($result as$row){$data[]=$row;}
打印(数据);
$no=1$总数=计数(数据);
echo$total_deger;

对于($i=0;$i),首先要检查SQL查询返回的行。然后我认为需要将
foreach
修改为
,而
如下所示。在循环之前还要检查返回的行

if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        $data[] = $row;
    }
}

根据此处给出的示例:

带有更正和建议的代码(均已注释):-


语法错误:-
for($i=0;$iyes,现在没问题了..谢谢。但是现在我的$no=1和我的if语句$noAlso
echo$xxx[i];
应该是
echo$xxx[$i];
当事情没有按预期工作时,请查看PHP错误日志,这也适用于这一行所有
i
变量都必须是
$xxx[i]=”[Date.UTC(“.$data[i]['year'.]”、“$data[i]['month'.]”、“$data[i]['day'.]”、“$data[i]['saat'.]”、“$data[i]['dakika'.]”、00)、“$data[i]['Guc'.]”如果($no<$total_deger){.echo”、“;}
在打开PHP标签后立即进行测试时添加到文件顶部,例如
我添加了一个
foreach()
suggestion,这对您更有利。当我再次使用foreach时,只是看到,,,,,不是我的值。我的总数=9,但我的输出是[Date.UTC(,,,,,,,,,,,,,,],[Date.UTC((foreach或for循环,而不是两者)
<?php
error_reporting(E_ALL); // check all errors
ini_set('display_errors',1);// display those errors
$var = "SELECT SUBSTRING(KayitTarihi,1,4) AS year,SUBSTRING(KayitTarihi,6,2) AS month,SUBSTRING(KayitTarihi,9,2) AS day,SUBSTRING(KayitTarihi,12,2) AS saat,SUBSTRING(KayitTarihi,15,2) AS dakika,Guc FROM Urun WHERE Date(KayitTarihi)=\"".$link_m."\"";

$result = $mysqli->query($var);

$data = array();

if ($result->num_rows > 0) { // check you got results or not
    while($row = $result->fetch_assoc()) { 
        $data[] = $row; // assign them
    }
}

//foreach ($result as $row) {$data[] = $row;} // not needed 

print_r($data);

$no=1;

$total_deger= count($data);

echo $total_deger;

for($i=0;$i<$total_deger;$i++){ // remove )

$xxx[$i]="[Date.UTC(".$data[$i]['year'].",".$data[$i]['month'].",".$data[$i]['day'].",".$data[$i]['saat'].",".$data[$i]['dakika'].",00),".$data[$i]['Guc']."]"; // use $i  instead of i
if($no < $total_deger)
{
    echo ",";
}
echo $xxx[$i];

}
//use foreach
foreach ($data as $dat){
    echo "[Date.UTC(".$data['year'].",".$data['month'].",".$data['day'].",".$data['saat'].",".$data['dakika'].",00),".$data['Guc']."]";
}