我有一个PHP脚本,我想用它从数据库中读取服务器并使用cURL连接到它们.服务器使用来自SQL查询的结果进行响应.问题是,服务器每次响应后的脚本都显示数字1个.输出如下所示:

服务器1个:一些结果

1个服务器2:一些结果

1个服务器3:一些结果

1个

下面是从数据库读取服务器并连接到它们的代码:

<?php

$mysql_id = mysql_connect('localhost', 'ms', 'pass');
mysql_select_db('servers', $mysql_id);
mysql_query("SET NAMES utf8");

$query = "SELECT * FROM svr";
$result = mysql_query($query);
$num = mysql_num_rows($result);
while ($data = mysql_fetch_assoc($result))
{
    $server[] = $data;
}

mysql_close($mysql_id);

$i = 0;
while($i < $num) {
    $dealer = $server[$i]['dealer'];

    echo $dealer . "<br />";

    $data = "val=a"; //just for testing                                                                    

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");                                                                     
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);    
    curl_setopt($ch, CURLOPT_HTTPHEADER, array(                                                                                                                                                       
        'Content-Type: text/html; charset=utf-8')                                                                       
    );                                                                                                                                                                                   

    $result = curl_exec($ch);
    echo $result;
    $i++;
}

?>

I discovered that 1个 is displayed with "echo $result;" and the code for creating response is this:

<?php

$mysql_id1个 = mysql_connect('localhost', 'ms', 'pass');
mysql_select_db('servers', $mysql_id1个);
mysql_query("SET NAMES utf8");

    $query2 = "SELECT * FROM data";
    $result2 = mysql_query($query2);
    $num2 = mysql_num_rows($result2);
    while ($data2 = mysql_fetch_assoc($result2))
    {
        $deli[] = $data2;
    }
    $i1个 = 0;
    $space = "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
    while ($i1个 < $num2) {
        echo $space . $deli[$i1个]['id'] . " ";
        echo $deli[$i1个]['artikel'] . " ";
        echo $deli[$i1个]['znamka'] . " ";
        echo $deli[$i1个]['model'] . " ";
        echo $deli[$i1个]['letnik'] . " ";
        echo $deli[$i1个]['cena'] . " € ";
        echo $deli[$i1个]['zaloga'] . "<br />";
        $i1个++;
    }
    echo "<br />";
    mysql_close($mysql_id1个);
?>

请帮帮我

推荐答案

使用CURLOPT_RETURNTRANSFER选项.否则,cURL将自动 echo 数据,只返回true(通过ECHO转换为1).

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

PHP.net说,

如果为True,则将传输作为curl_exec()返回值的字符串返回,而不是直接输出.

Database相关问答推荐

为Postgres数据库字段创建复合索引

重新运行后未找到 Taipy 场景

华为Appcube中的对象字段类型

如何理解 CAP 定理的可用性?

Ruby on Rails:before_save 字段为小写

我可以为 dapper-dot-net 映射指定数据库列名称吗?

如何将数据库从一台计算机复制到另一台计算机?

向表中添加大量索引是否有缺点?

行之间的 SQL 差异

应用程序用户应该是数据库用户吗?

Slick 3.0 在数据库驱动程序级别是reactive/asynchronous的吗?对于哪些数据库?

如何在 SSIS 中插入新记录之前清空我的目标表?

如何使用 MySQL Workbench 架构差异两个数据库?

cURL 和 PHP 显示1

Python中准备好的语句和参数化查询之间的混淆

SQLite3 UNIQUE 约束失败错误

如何使用 group_concat 引用值

在一个查询中使用 group by 计算多列

在具有所需 ForeignKey 引用的 Django (1.8) 应用程序之间移动模型

数据库 EAV 优点/缺点和替代方案