我是php和mysqli的新手,我正在尝试为我玩的游戏组建一个统计网站。在一个坚果壳中,这个代码1)按用户(通过URL)查找最后的X架次(这里1但可以改为任何数字),2)结果的卷曲,3)将它放入/ tmp / sorties .csv,然后4)将数据本地infle /tmp/sortie.csv加载到我的数据库。
它确实连接到数据库(成员表)并按成员/玩家名称查找(echos返回"更新为"),以及游戏信息(显示每个玩家有1个出击游戏数据库中的数据) - 我已经注释了标题,以便查看回溯的内容。
我的网站托管购买第三方,但使用的是sql 5.5.32,php 5.3.13,并且是Linux / Debian平台。非常感谢任何(和所有)的帮助,我实际上通过使用这里提供的一些问题和答案写了绝大多数。我确实有这个代码的唯一MySQL版本有相同的错误(2天前开始不工作),我希望更新到mysqli将纠正问题。数据库字段在数量和数据类型上都匹配。
//header("Location: /hcman/delsorties.php"); //After sorties put into database - clears any that are not valid
include 'Data/openi.php';
//Collect player name info
$query = "SELECT name FROM Members";
$result=$link->query($query);
// Array
$rows = array();
while($row = $result->fetch_array())
{
$rows[] =$row['name'];
}
// collect sortie data
foreach ($rows as $player)
{
$url = "http://csr.wwiionline.com//player_sorties_csv.php?username=".$player."&startsortie=0&sortiecount=1";
$path = '/tmp/sortie.csv' ;
// echo Player name -- works
echo "<br /><br />Updating for ".$player."<br />" ;
//Curl to tmp file (aka $path)
$ch = curl_init($url);
if($ch === false)
{
die('Failed to create curl handle');
}
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result=curl_exec($ch);
if(!curl_exec($ch))
{
die('Error: "' . curl_error($ch) . '" - Code: ' . curl_errno($ch));
}
curl_close($ch);
file_put_contents($path,$result );
//show sortie (post Curl) data on screen -- Works
echo $result ;
// Input to the database -- Not working
$sqli = "LOAD DATA LOCAL INFILE '/tmp/sortie.csv'
INTO TABLE Sorties
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '\''
LINES TERMINATED BY '\n'
" ;
$done=$link->query($sqli);
if (!$done) echo mysqli_error($sqli);
/*if (mysql_affected_rows() >= 1) {
$message = "The user was successfully updated!";
}
else
{
$message = "</br>The user update failed:</br> ";
$message .= mysql_error();
}
echo $message;
*/
}
$result->close();
$link->close();
return $rows;
答案 0 :(得分:0)
你能相信吗 - 在挖掘这个网站以寻找完全不同的问题时,我喜欢这个问题"Load data local infile" command not allowed
当我将我的sqli连接字符串调整为此处的建议时,我的代码神奇地起作用....有点乐趣...喜欢寻找解决方案。虽然如果有人有优化的输入,我也可以接受这些建议