i mysqli og PDO
skal du angive navnet på din connection, hvor du ikke behøvede det i det gamle API da connection blev lagt som en super global
din code omskrevet, kun se ca sådan ud (utested)
<?php
class DB{
function Conn($action){
//$link = new mysqli("xxx.dk.mysql", "usernamexxx", "passwordxxx", "databasexxx");
$link = mysqli_connect("xxx.dk.mysql", "usernamexxx", "passwordxxx", "databasexxx");
if($action == "open"){
if(!$link){
//die("Could not Connect ==> ".$link->error );
die("Could not Connect ==> ".mysqli_error($link) );
}else{
reurn $link;
}
}elseif($action == "close"){
mysql_close($link);
}
}
}
$link = DB::Conn("open");
// Get data from database.
$SQL = "SELECT * FROM dgk_links LIMIT 9";
//$loadin = $link->query($SQL) or die("mySQL ERROR:".$link->error );
$loadin = mysqli_query($link,$SQL) or die("mySQL ERROR:".mysqli_error($link) );
// while ($Get = $loadin->fetch_object()){
while ($Get = mysqli_fetch_object($loadin)){
echo '<li><a target="new" href="'.$Get->link.'">'.utf8_encode($Get->name).'</a></li>';
}
?>
jeg har skrevet det procedural style, så du kan se hvor meget det ligner det gamle, og i OOP style (udkommenteret), som er dagens standart, så opdater din code og anvendt OOP style.
****************
i mysqli kan man skrive i 2 styles:
procedural style: som du kender fra det gamle mysql, der er grundlæggende bare tilføjet et
i, i alle mysql_ kommandoerne så de hedder mysqli_, og ved mange af dem skal du også angive din connection
OOP style: dette er det der anvendes mest, og er fremtiden
Prepare Statement: er noget af det nye der er kommet til i mysqli, en kvik guide lå tidligere her
http://www.eksperten.dk/guide/1480du har kun numbered place holders
guiden kan nu findes på
http://archive.org/web/indtast
www.eksperten.dk/guide/1480 i søge feltet
vælg sidst gemte dato her april 13, 2016
*************
PDO: dette ser jeg som det fremtidige ext (API), du kan kun anvende OOP style, tilgengæld har du alle fordele fra ODBC men ikke ulemperne ved at skulle installerer en system driver
PDO anvender også en extern driver men PHP har de mest anvendte indbygget. (skal evt enables i php.ini)
Prepare Statement: er klart forbedret i forhold til mysqli
du har numbered placeholders og named placeholders, sidst nævnte er klart nemmere at læse IMHO
*****************
overvej at anvende Prepare Statement som er noget af det nye der er kommet til i mysqli og forbedret i PDO