duanhuo0577 2014-12-10 10:24
浏览 20

为什么我的PHP代码不检查所需MYSQL表的每一行

i need to loop through a table of myn, check one of its columns(id) during each row and match these id values in a another table to obtain the value known as useragent from it.

but currently theres something wrong with my while loop this only checks the id value of the first row only(it does not keep on checking every row)

$myarray = mysql_query("SELECT * FROM table_105");

while($row = mysql_fetch_array($myarray)){
    $table = 'table_105';
    $update = mysql_query("SELECT id as unp FROM $table");
    $col = mysql_fetch_assoc($update);
    $col_id = ($col["unp"]);

    $var1 = mysql_query("SELECT useragent as ua FROM paneltb WHERE id = $col_id");
    $col3 = mysql_fetch_assoc($var1);
    $col_ua = ($col3["ua"]);

    $browser = get_browser($col_ua, true);
    $platform = $browser['platform'];
    $device_name = $browser['device_name'];
    $browser_name = $browser['browser'];
    $version = $browser['version'];

    mysql_query("
            INSERT INTO table_tester(`trackerID`,`id`, `timestamp`, `useragent_browser`,`useragent_OS`,`useragent`)
            SELECT `trackerID`, `id`, `timestamp`, `useragent_browser`, `useragent_OS`,'".$col3["ua"]."'
            FROM $table")
            or die(mysql_error());

}
  • 写回答

1条回答 默认 最新

  • doudong4532 2014-12-10 10:41
    关注

    Its because your code is for only one row if you want to check all rows then put your content inside while loop for id and useragent like:

    $myarray = mysql_query("SELECT * FROM table_105");
    while($row = mysql_fetch_array($myarray)){
    $table = 'tracktable_105';
    $update = mysql_query("SELECT id as unp FROM $table");
    while($col = mysql_fetch_assoc($update))
    {
    $col_id = ($col["unp"]);
    
    $var1 = mysql_query("SELECT useragent as ua FROM paneltb WHERE id = $col_id");
    while($col3 = mysql_fetch_assoc($var1))
    {
    $col_ua = $col3["ua"];
    
    $browser = get_browser($col_ua, true);
    $platform = $browser['platform'];
    $device_name = $browser['device_name'];
    $browser_name = $browser['browser'];
    $version = $browser['version'];
    mysql_query("
            INSERT INTO table_tester(`trackerID`,`id`,`timestamp`,`useragent_browser`,`useragent_OS`,`useragent`) SELECT `trackerID`, `id`, `timestamp`, `useragent_browser`, `useragent_OS`,'".$col3["ua"]."' FROM $table") or die(mysql_error());
    }
    }
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥15 pyqt5tools安装失败
  • ¥15 mmdetection
  • ¥15 nginx代理报502的错误
  • ¥100 当AWR1843发送完设置的固定帧后,如何使其再发送第一次的帧
  • ¥15 图示五个参数的模型校正是用什么方法做出来的。如何建立其他模型
  • ¥100 描述一下元器件的基本功能,pcba板的基本原理
  • ¥15 STM32无法向设备写入固件
  • ¥15 使用ESP8266连接阿里云出现问题
  • ¥15 BP神经网络控制倒立摆
  • ¥20 要这个数学建模编程的代码 并且能完整允许出来结果 完整的过程和数据的结果