mysql_result在php中导致错误

时间:2012-08-16 21:50:17

标签: php mysql sql apache phpmyadmin

我只是将数据库从MS-Access转移到mysql

我使用以下代码(仅部分相关代码)从mysql

中检索数据
$con = mysql_connect("localhost","abc","abc@123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }


  $conn= mysql_select_db('xyz', $con);
if (!$con) {
    die ('Can\'t connect to database : ' . mysql_error());
}

$sql="SELECT * FROM Inventory where Text5='y' OR Text5='Y'  ";
$rs=mysql_query($sql);
if (!$rs)
  {exit("Error connecting database,,,");}

while (mysql_fetch_row($rs))
//while (!$rs->EOF)
  {
        $ASIN=trim(mysql_result($rs,"ASIN"));

        $LocalSKU = trim(mysql_result($rs,"LocalSKU"));

        //$ASIN=trim($rs->fields[120]);
        if(trim($ASIN)!=""){
            //include('funtions.php');
            $shipArray = shipingPrice($ASIN);
            $Price=round((mysql_result($rs,"Price")),2);
            $Price2=round((mysql_result($rs,"Price2")),2);  

但是当我运行脚本时,我收到以下错误消息

  

警告:mysql_result()期望参数2为long,给定字符串   在第67行的C:\ wamp1 \ www \ nathan \ amazonPrice.php

基本上,从查询结果中,我想选择ASINLocalSKU字段的值来进一步处理..

有人可以告诉我这里我做错了吗?

1 个答案:

答案 0 :(得分:4)

http://php.net/mysql_result

mysql_result的第二个参数是你想要的行。它是 NOT 字符串字段。

您的代码非常糟糕。您可以通过以下方式大大简化它:

$row = mysql_fetch_assoc($rs);
$price = $row['price'];
$pric2 = $row['price2'];
etc...