好的,这将是我今天在这里发表的最后一篇文章,请你们提出有关为什么我的可怕代码dosnt工作的问题:)
我正在尝试运行查询以使用文本文档内容更新列的所有值。我的数据库如下所示:
Attribute_id | value
64 | Data.txt
109 | other data
64 | Data2.txt
109 | other data
如果您查看我的脚本,您可以看到我想要做的事情,现在我正在回答最终结果的查询:http://dev.central-pet-supplies.co.uk/test.php
它正在回归 更新mage_catalog_product_entity_text SET value ='Array'WHEREvalue ='13685.txt' 但是数组应该是文本文件内容
这是脚本:
<?php
mysql_connect ("localhost","cpsdev_mage1","********");
mysql_select_db ("cpsdev_mage1");
$sql = "select value from mage_catalog_product_entity_text WHERE Attribute_id = 64";
$result = mysql_query ($sql) or die($myQuery."<br/><br/>".mysql_error());
while($row = mysql_fetch_array($result,MYSQL_ASSOC))
{
$lines = file('http://dev.central-pet-supplies.co.uk/media/import/' . $row['value']);
$query3 = "UPDATE mage_catalog_product_entity_text " . " SET value= '" . $lines . "' WHERE value = '" . $row['value'] . "'";
echo $query3 ."<br>";
}
?>
编辑:将文件更改为file_get_contents,现在正在运行。
答案 0 :(得分:0)
file()
读取整个文件,每行作为数组中的新条目。由于您不希望这样,您可以使用implode()
通过添加
$lines = implode( "\n", $lines);
后:
$lines = file('http://dev.central-pet-supplies.co.uk/media/import/' . $row['value']);
或者,使用file_get_contents()
代替file()
,它将整个文件的内容作为字符串而不是数组返回:
$lines = file_get_contents( 'http://dev.central-pet-supplies.co.uk/media/import/' . $row['value']);
答案 1 :(得分:0)
你没有显示$lines
来自哪里,但它是一个数组我假设文本文件中的行。使用类似file_get_contents
的内容来将文本文件的内容改为单个字符串。