0

我正在使用 PHP cURL 发送相同的数据。但我在文本区域中使用 "\n" 字符并打印"Empty reply from server"。除非我使用“\n”,否则它正在工作。

例如:

<form action="gonder.php" method="post">
<textarea name="content" rows=23 cols=70></textarea>
<input class="button" type="submit" value="Kaydet">
</form>

还有我的 gonder.php 文件:

<?php

if($_POST['content'] != ""){

$ch = curl_init('http://address/page.php');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'bilgi='.$_POST['content']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($ch) or die(curl_error($ch));

header("Location: index.php?olay=2");
}

?>

附加信息:我的文件末尾有单引号。

我怎么解决这个问题?

veriler.txt:

araba
ev
dükkan
mağaza

veriler.txt 在另一台服务器上,我想用 post 方法用 textarea 重写它

4

2 回答 2

0

如果您传递一个数组,curl 将为您编码,或者您可以在现有代码中使用 urlencode():

$content = array('bilgi' => $_POST['content']);
curl_setopt($ch, CURLOPT_POSTFIELDS, $content);
于 2013-11-11T20:17:39.117 回答
0

我认为您需要使用以下函数将文本作为 HTML 发送 nl2br(htmlentities()) :

 curl_setopt($ch, CURLOPT_POSTFIELDS, 'bilgi='.nl2br(htmlentities($_POST['content'])));

作为

araba<br>
ev<br>

然后,当您收到它时,使用 html 代码从 html 代码中提取文本str_replace( "<br>" , "\n" , $_POST['bilgi']);,并将其写入您的文件 veriler.txt

于 2013-11-11T20:21:40.477 回答