array_push(is_array($voters)?$voters:array(),$row['uid']) ;
$voteid=implode(',',is_array($voteid)?$voters:array());

解决方案 »

  1.   

    Warning: array_push() [function.array-push]: First argument should be an array in C:\wamp\www\20xuan\voteadd.php on line 14 
    你$voters不是数组;得加上 $voters = array();Warning: implode() [function.implode]: Bad arguments. in C:\wamp\www\20xuan\voteadd.php on line 15 
    这个函数是把数组用待定符号连起来;$voteid=implode(',',$voters);多看手册,连函数也不会用!哎。
      

  2.   

    Warning: implode() [function.implode]: Bad arguments. in C:\wamp\www\20xuan\voteadd.php on line 15  
    这个函数是把数组用待定符号连起来;$voteid=implode(',',$voters); --------------
    做点小小的更正,implode是把数组中的元素按自定义的符号连接起来,而不是在连数组。
    原型如下:string implode ( string $glue , array $pieces )
    Join array elements with a glue string.
    例:<?php$array = array('lastname', 'email', 'phone');
    $comma_separated = implode(",", $array);echo $comma_separated; 
    ?>  
    结果为: lastname,email,phone
      

  3.   

    数据库表
    CREATE TABLE `user` 
    ( `uid` int(10) unsigned NOT NULL auto_increment,
      `username` varchar(20) NOT NULL,
      `teln` varchar(20) NOT NULL,
      `telw` varchar(20) NOT NULL,
      `email` varchar(100) NOT NULL,  PRIMARY KEY  (`uid`)) ENGINE=MyISAM DEFAULT CHARSET=gb2312 AUTO_INCREMENT=13 ;CREATE TABLE `vote` 
    ( `id` int(10) unsigned NOT NULL,
      `votename` varchar(100) NOT NULL,
      `votenum` int(10) NOT NULL,
      `voters` text NOT NULL,  PRIMARY KEY  (`id`)) ENGINE=MyISAM DEFAULT CHARSET=gb2312;voters 就是投这个项票的用户ID所组成的数组
      

  4.   

    把$voters和$votesid打印出来看看是什么类型不就行了么。。自己要会调试啊
      

  5.   

    <?
    $dbh=mysql_connect('localhost','root','123456'); 
    $db=mysql_select_db("test",$dbh) ;
    //先插入用户表
    $sql="insert  into  user(username,teln,telw,email) values('$username','$teln','$telw','$email')"  ;
    $result=mysql_query($sql) ;
    //取得用户uid
    $sqlvoters=mysql_query("SELECT  *   from user  where username='$username' and teln='$teln' and email='$email' ") ;
    $row=mysql_fetch_array($sqlvoters) ;
    //把用户uid插入$voters这个数组\
    $voters=array();
    array_push($voters,$row['uid']) ;
    $voteid=implode(',',$voters);
    print_r($voters);
    $sql1="UPDATE  vote   set votenum=votenum+1 ,voters='$voters'  where id  IN($voteid)" ;
    $result1=mysql_query($sql1) ;?>