class mysql{
  private $host;
  private $name;
  private $psw;
  private $db;
  private $encode;  function __construct($host,$name,$psw,$db,$encode){
  $this->host=$host;
  $this->name=$name;
  $this->psw=$psw;
  $this->db=$db;
  $this->encode=$encode;
  }
  function connect(){
  $con=mysql_connect($this->host,$this->name,$this->psw)or die (mysql_error());
  mysql_select_db($this->db,$con)or die ("数据库连接失败");
  mysql_query("set name '$this->encode'");
  echo "服务器连接成功";  }
  function query($s){
  return mysql_query($s);
  }
  function insert($db,$name,$value){
  echo "insert into $this->db ($name) values ($value)";
        exit;
  $this->query("insert into $this->db ($name) values ($value)");
  }
  function __call($n,$v){
  echo "不存在的方法为:".$n;
  echo "错误的值".print_r($v);
  } }$mydb=new mysql("localhost","root","","dbone","GBK");
$mydb->connect();$mydb->insert("dbone","id,username,email,title,content,lastdate","'','$_POST['username']','$_POST['email']','$_POST['title']','$_POST['content']',now()");老是插不进去 ,请教高手  帮忙看看。先谢谢了

解决方案 »

  1.   

    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in E:\wamp\www\mybbs\mysql_class.php on line 45
    这是错误提示。$mydb->insert("dbone","id,username,email,title,content,lastdate","'','$_POST['username']','$_POST['email']','$_POST['title']','$_POST['content']',now()"); 
    这句出错
    ‘为什么呀?
      

  2.   

    你将你的sql语句echo一下,一看就知道哪儿出错了
      

  3.   

    变量最好用大括号{}包起来。
    $mydb->insert("dbone","id,username,email,title,content,lastdate","'','{$_POST['username']}','{$_POST['email']}','{$_POST['title']}','{$_POST['content']}',now()"); 
      

  4.   

    $mydb->insert("dbone","id,username,email,title,content,lastdate","'','$_POST['username']','$_POST['email']','$_POST['title']','$_POST['content']',now()");
    这句出错 
    --------------------------------------后面几个$_POST没有解释到,  最好先把他们赋值给变量, 再写进sql语句里, 避免单引号和双引号之间混乱情况
      

  5.   

    还是有错呀 Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in E:\wamp\www\mybbs\mysql_class.php on line 25Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in E:\wamp\www\mybbs\mysql_class.php on line 25query()函数是这样的:有错吗?
    function query($s){
        $q=mysql_query($s);
        if($q){
         echo "成功了";
        }
        else{
         echo "失败了";
        }
        return $q;
      }
      

  6.   

    连接数据库不成功,检查下参数是否正确。
    $con=mysql_connect($this->host,$this->name,$this->psw)or die (mysql_error()); 
      

  7.   

    连接是成功了,query()这个函数出了问题。
      

  8.   

    有两个问题:
    1。你什么时候调用connect()进行数据库连接的
    2。你insert参数$db是没用的。因为你函内部用的是$this->db
    检查下这两项吧,
    另外,如果你没错误的话,在query方法里,把$sql打印出来,去MYSQL客户端执行一下,然后把客户端提示的错误打出来!