sql >> Database teknologi >  >> RDS >> Mysql

Ændring af kode fra MySQL til PDO

Først hvis du vil ændre fra mysql_* til PDO

du bliver nødt til at ændre alle dine koder i scriptet, ikke kun en enkelt, der bare ikke vil virke

og hvis du vil ændre koderne fra mysql_* til PDO

du bliver nødt til at ændre forbindelsen til databasen ved at bruge PDO

her er et eksempel på det :

// here we set the variables 
$dbhost = "localhost";
$dbname = "testcreate";
$dbuser = "root";
$dbpass = "mysql";

// here we are using ( try {} ) to catch the errors that will shows up and handle it in a nicer way
    try {
    $db = new PDO('mysql:host='.$dbhost.';dbname='.$dbname.';charset=utf-8', ''.$dbuser.'', ''.$dbpass.'');
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    } catch (PDOException $e) {
        echo 'Error : <br>' . $e->getMessage();
    }
// here we set the varible for the connection = then starting the cennction with new POD();
$db = new PDO('mysql:host='.$dbhost.';dbname='.$dbname.';charset=utf-8', ''.$dbuser.'', ''.$dbpass.'');
// here we set an Attribute to handle the errors
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// you dont need to use it in our case because we already catching the error and handling it in out way
  // here we catch the error then handling it by echo a msg and then we used
  // $e->getMessage(); to get the error msg that should be throwing in the page
    catch (PDOException $e) {
        echo 'Error : <br>' . $e->getMessage();
    }

-----------------------------------------------------

nu, hvor vi er færdige med connecti, vil vise dig, hvordan du forespørger og henter tabeller

 // this is how we will use query
 $qr = $db->query()

 // and this is how to fetch it by taking the query variable and use the arrow then fetch 
 $ro = $qr->fetch()

Jeg vil vise dig et eksempel på din kode

$querytemp = mysql_query("select * from main_setting") or die (mysql_error());
$row = mysql_fetch_object($querytemp);

vi ændrer dette til

$querytemp = $db->query("select * from main_setting");
$row = $querytemp->fetch(PDO::FETCH_OBJ);

så nu kan du bruge $row->news med BOB

og nu kan du nemt ændre dine koder til PDO



  1. ÆNDRING TABEL TILFØJ KOLONNE tager lang tid

  2. Hvordan inkluderes det samlede antal returnerede rækker i resultatsættet fra SELECT T-SQL-kommandoen?

  3. Duplikering af rækker baseret på en kolonneværdi i hver række

  4. MySQL:hvorfor varchar(254) og ikke varchar(255)?