我对PHP非常陌生,无法找到如何解决这个问题。我有一个表单,并希望将一些字符串传递给它,并使用另一个文件进行检查。如果所有字符串都在同一行上,但是一旦我放入多行字符串,就会失败。我无法获得strpos与新行一起工作
我有下面的代码的PHP文件:
<?php
echo "<center><form method='post' enctype='multipart/form-data'>";
echo "<b></b><textarea name='texttofind' cols='80' rows='10'></textarea><br>";
echo "<input name='submit' type='submit' style='width:80px' value='Run' />";
echo "</form></center>";
$texttofind = $_POST['texttofind'];
if(get_magic_quotes_gpc()) {
$texttofind = stripslashes($texttofind);
}
$texttofind = html_entity_decode($texttofind);
$s = file_get_contents ("/home/xxxxx/public_html/abc.txt");
if (strpos ($s, $texttofind) === false) {
echo "not found";
}
else
echo "found";
?>
和的abc.txt,我有
dog
cat
rat
每当我打开PHP页面,并输入在短短的狗或猫,它会没事,并显示'found'
消息,但是当我输入多行像'狗<enter on keyboard>
猫',然后单击提交按钮,它将返回'not found'
消息。
代码有什么问题,或者无论如何要适应它,以便它能够搜索多行?
预先感谢您。
所以,如果你在两行提交两个词,那么你要同时检查?一个简单的循环会在这里执行 –
你的文件可能使用(说)'\ n'作为行分隔符,但是你的浏览器正在发送'\ r \ n'。 –
从Hanky获得了工作代码。问题已经解决了。感谢Hanky,Dan和Marc。 – user1951663