dongtan6543 2014-11-13 11:12
浏览 31
已采纳

多次从另一个PHP脚本调用php脚本

i have this code for read some data from a database, and call another php script (hostes on another server) for sending retrieved data. this is my code:

while ($rs = mysql_fetch_array($quary_result)) {
    $fields = array(
        'field1' => $rs['field1']
    );

    $postvars = http_build_query($fields);

    $ch = curl_init();

    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_POST, count($fields));
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postvars);

    $result = curl_exec($ch);
    curl_close($ch);
}

but this code is executed only once. My query as about 200 results, while is executed only one time. What's wrong?

  • 写回答

1条回答 默认 最新

  • duanrui3480 2014-11-13 11:21
    关注

    You have the impression that it is executed only once...

    Your code says this:

    while $rs = mysql_fetch_array($query_result) is true { do something }
    

    Then the $result var will be overwritten at each entering in the while loop. Try converting the $result var into an array of result and then print the array to see if you have all your values like:

    $result[] = curl_exec($ch);
    echo '<pre>';
       print_r($result);
    echo '</pre>';
    

    Also, you can use foreach() like:

    $result = mysql_fetch_array($quary_result);
    foreach ($result as $res) { do something }
    

    AND STOP USING MYSQL - this is deprecated. Use PDO instead like you are thought in this tutorial: PDO Tutorial.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥30 关于<main>标签页面跳转的问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加
  • ¥15 用ns3仿真出5G核心网网元
  • ¥15 matlab答疑 关于海上风电的爬坡事件检测
  • ¥88 python部署量化回测异常问题