【发布时间】:2018-03-19 12:40:15
【问题描述】:
我从这样的文本文件结构中读取: 啊啊啊 bbb ccc 并写入数组,现在我需要使用此名称进行查询,选择具有此名称的所有列并将结果写入 csv 文件,文件读取工作正常但查询仅返回 1 行,仅返回 ccc 数组的最后一个. 帮帮我。
这是我的代码:
<?php
$servername = "localhost";
$username = "root";
$password = "";
$db = "tirocinioriginale";
$con = mysqli_connect($servername, $username, $password,$db);
if (!$con) {
die("Connessione fallita: " . mysqli_connect_error());
}
$myfile = fopen("aziende1.txt", "r") or die("Unable to open file!");
//echo fread($myfile,filesize("aziende1.txt"));
$aziende = array();
while (!feof($myfile)) {
$aziende[] = fgets($myfile);
}
fclose($myfile);
echo implode(',',$aziende);
$query = "SELECT * FROM azienda WHERE nome IN ('".implode("','",$aziende)."')";
$result = $con->query($query);
$azienderow = array();
while($row = $result->fetch_assoc())
{
array_push($azienderow, $row);
}
echo "Connessione successo";
var_dump($azienderow);
//$row = mysql_fetch_assoc($result);
/* $fp = fopen('dumpaziende.csv', 'w');
foreach ($row as $val) {
fputcsv($fp, explode($val));
}
fclose($fp);
*/
//var_dump($aziende);
mysqli_close($con);
?>
如果使用我的代码,结果是: 文件: 艾特克 意大利数据
aitech ,ItaldataConnessione successoarray(1) { [0]=> array(12) { ["id_azienda"]=> string(3) "244" ["nome"]=> string(8) "ItalData" [ "settore"]=> string(17) "Sviluppo software" ["website"]=> string(5) "sadsa" ["email"]=> string(11) "dasdasddsad" ["curriculum_aziendale"]=> string (9) "dasdasdas" ["tematiche"]=> 字符串(7) "fafdaew" ["n_borse"]=> NULL ["data_stipula_convenzione"]=> 字符串(10) "2018-03-14" ["data_fine_convenzione" ]=> string(10) "2018-03-20" ["attiva"]=> string(1) "1" ["tipologia_id"]=> string(1) "3" } }
【问题讨论】:
-
你检查过
$query的值是多少吗? -
发送
print_r( $result );看看你从查询中得到了什么。 -
将
ini_set('display_errors', 1); ini_set('log_errors',1); error_reporting(E_ALL); mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);添加到脚本的顶部。这将强制任何mysqli_错误生成一个您可以在浏览器上看到的异常,并且其他错误也将在您的浏览器上可见。 -
告诉我们你从
print_r( $aziende );得到什么 -
拜托!编辑您的问题以添加额外信息