Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MySQL包装器和获取行_Php_Mysql_Wrapper - Fatal编程技术网

Php MySQL包装器和获取行

Php MySQL包装器和获取行,php,mysql,wrapper,Php,Mysql,Wrapper,我在上找到了简单的数据库包装器,但无法获取行 <?php class DBConnect { static public $HOST; static public $USER; static public $PASS; static public $BASE; static private $LINK = -1; public function Prepare($h,$u,$p,$b) { self::setHost($h);

我在上找到了简单的数据库包装器,但无法获取行

<?php

class DBConnect
{

  static public  $HOST; 

  static public  $USER;

  static public  $PASS;

  static public  $BASE;

  static private $LINK = -1;

  public function Prepare($h,$u,$p,$b)
  {

    self::setHost($h);
    self::setUser($u);
    self::setPass($p);
    self::setBase($b);
  }

  public function setHost($h)  { self::$HOST = $h; }

  public function setUser($u)  { self::$USER = $u; }

  public function setPass($p)  { self::$PASS = $p; }

  public function setBase($b)  { self::$BASE = $b; }

  private function setLink($l) { self::$LINK = $l; }

  public function getHost() { return self::$HOST; }

  public function getUser() { return self::$USER; }

  public function getPass() { return self::$PASS; }

  public function getBase() { return self::$BASE; }


  public function getLink()
  {

    if( self::$LINK != -1 )
    {
      return self::$LINK;
    }
    else
    {
      try
      {
        $link = mysql_connect(self::getHost(),self::getUser(),self::getPass());
        self::setLink($link);
      }
      catch(Exception $e)
      {
        echo "Could not establish a link to the specified database.\n" . $e->getMessage();
        self::setLink(-1);
      }
      return self::$LINK;
    }
  }


  public function SelectDb($db='')
  {

    try
    {
      if( $db == '' )
        mysql_select_db(self::getBase(),self::getLink());
      else
        mysql_select_db($db,self::getLink());
    }
    catch(Exception $e)
    {
      echo "Could not select the specified database '$db'.\n" . $e->getMessage();
    }
  }

  public function Select($q)
  {

    try
    {
      $result = mysql_query($q,self::getLink());
      if( is_resource($result) )
        return $result;
    }
    catch(Exception $e)
    {
      echo "Could not query datasource.\n" . $e->getMessage();
    }
    return 0;
  }

  public function Insert($q)
  {

    try
    {
      mysql_query($q,self::getLink());
      return mysql_insert_id(self::getLink());
    }
    catch( Exception $e )
    {
      echo "Bad insert: " . $e->getMessage();
      return -1;
    }
  }

  public function Update($q)
  {

    return mysql_query($q,self::getLink());
  }

  public function Delete($q)
  {

    return mysql_query($q,self::getLink());
  }

  public function getRow($r)
  {

    if( is_resource($r) ) return mysql_fetch_assoc($r);
    return null;
  }

  public function Close()
  {

    if( is_resource(self::$LINK) ) mysql_close(self::$LINK);
  }

  public function Escape($s)
  {

    return mysql_real_escape_string($s,self::$LINK);
  }

}

你需要
SelectDb
first

你需要
SelectDb
first

我不明白为什么这样不行。我唯一想改变的是你的回音声明

echo $row[id]; to echo $row['id']; echo$row[id]; 到 echo$row['id']; 正如下面提到的,您需要选择要处理的数据库,我们不是指表,而是指表所属的数据库

您需要使用以下选项:

$db = DBConnect::SelectDb("dbname");
$db=DBConnect::SelectDb(“dbname”) 我不明白这为什么行不通。我唯一想改变的是你的回音声明

echo $row[id]; to echo $row['id']; echo$row[id]; 到 echo$row['id']; 正如下面提到的,您需要选择要处理的数据库,我们不是指表,而是指表所属的数据库

您需要使用以下选项:

$db = DBConnect::SelectDb("dbname");
$db=DBConnect::SelectDb(“dbname”);对不起,我忘了:$mysql_result=DBConnect::Select(“Select*fromtable”);我的意思是,仅仅连接数据库是不够的,你需要选择你想处理的数据库!对不起,我忘了:$mysql_result=DBConnect::Select(“Select*fromtable”);我的意思是,仅仅连接数据库是不够的,你需要选择你想处理的数据库!