我在网上看到好多代码,可是插入到我的文件里面就不行,请各位帮我看看,怎么样查询某字段最大值然后把它赋予变量,我是查询到之后进行加1计算。<?php 
$db_host="localhost";//服务器  $db_user="root";    //用户名  $db_psw="123456";    //密码  $db_name="test";//数据库名  
 
 
$conn = mysql_connect($db_host,$db_user,$db_psw) or die("链接错啦");  mysql_select_db($db_name,$conn) or die("链接又错啦");  mysql_query("set names utf-8");  
$line = 0;
$file = fopen('upload/amazon_erp.csv',"r"); 
$strSql="SELECT MAX(sku) FROM table";$query = mysql_query($strSql,$conn);  
$resulta= mysql_fetch_row($query);
$maxid=$resulta;print_r($resulta);
  while ($result = fgetcsv($file)) {    
  
    //每次读取CSV里面的一行内容   

if ($line <> 0)
   {
 $maxid++;  $sku=$result[0];
  $name=$result[1];
  $address=$result[2];
  $a=$result[3];
  $b1=$result[16];
  $b2=$result[17];
  $b3=$result[18];
  $b="$b1,$b2,$b3";  $c="$sku,$name,$address,$a,$b";echo $c;
 echo "<br/>";
 
 $sql="INSERT INTO `test`.`table` (`$resulta`, `name`, `address`, `a`, `b`) VALUES ('$resulta','$name','$address','$a','$b')";  mysql_query($sql); 
 } 
  $line++;
 
 fclose($file);  
echo "导入成功";
?> 

解决方案 »

  1.   

    还有我这段代码是先上传CSV文件,然后把CSV文件的数据读取写入数据库,测试用的8条数据,每次都少第6条,不知道怎么回事!
      

  2.   

    $resulta= mysql_fetch_row($query);   //这里得到的是一个数组。print_r($resulta); 就知道了。
    $maxid=$resulta[0];   //这样
      

  3.   

    if ($line <> 0) 第一次循环不会插入, 是这个问题吗/
      

  4.   

    $db_host="localhost";//服务器   
    $db_user="root"; //用户名   
    $db_psw="65555055"; //密码   
    $db_name="test";//数据库名   
    $conn = mysql_connect($db_host,$db_user,$db_psw) or die("链接错啦");   
    mysql_select_db($db_name,$conn) or die("链接又错啦");   
    mysql_query("set names utf-8");   
    $strSql="SELECT MAX(sku) FROM table";
    $query = mysql_query($strSql,$conn); 
    $resulta= mysql_fetch_row($query);
    //$maxid=$resulta;
    print_r($resulta);这段代码输出内容都为空的,感觉没有读到数据库。
      

  5.   

    请问这个查询字段最大值的代码,phpmyadmin里面有没有???我另一段代码插入数据库的代码就是从phpmyadmin里面复制出来的,网上的都不行
      

  6.   


    #字段最大值:
    select MAX(id) from table;参考mysql手册:12. 函数和操作符->12.4. 数值函数->12.4.2. 数学函数
      

  7.   

    查询最大值的问题解决了
    $strSql="SELECT MAX(order_no) FROM `0_sales_orders`";表名加''就是行,也不知道为什么还有我想请,我一次要查询4个表的ID最大值,应该怎么写,写四段那样的代码????
      

  8.   

    select max(id) from t1
    union all
    select max(id) from t2
    union all
    select max(id) from t3
    union all
    select max(id) from t4
      

  9.   


    SELECT MAX(c.id),MAX(i.id) FROM t1 AS c, t2 AS i;
      

  10.   

    SELECT MAX(c.id),MAX(i.id) FROM t1 AS c, t2 AS i;
    请问这个c.id是什么意思??
      

  11.   


    SELECT MAX(c.id),MAX(i.id)  //c.id <==> t1.id
    FROM t1 AS c,               //定义表t1的缩写为c
    t2 AS i;                    //如上,定义表t2的缩写为i如有需要请参考:MySQL手册