$connect=mysql_connect('server','uživatel','heslo'); mysql_pconnect ($server, $user, $pass);//Vytvoří persistentní (trvalé) spojení s MySQL serverem a vrací identifikátor spojení
mysql_select_db ($db);//předpne do zvolené db
$q="select id from table "; $vysledek=mysql_query($q,$connect);//funkci lze volat bez 2. parametru a automaticky přiřadí otevřené spojení echo $celkem = mysql_num_rows($vysledek); //Počet řádků vrácených sql serverem
Data, které posílá server jako reakci na SQL dotaz jsou uloženy ve formě asocitivního pole.
Lze použít několik funkcí (mysql_fetch_array, mysql_fetch_row, mysql_fetch_assoc, ...). My si popíšeme dva znich.
while ($zaznam = mysql_fetch_array($vysledek)) { echo $zaznam["id"]; } //výpis dat z dotazu for ($i = 1; $i<= $celkem; $i++) { list($nazev,$obrazek) = mysql_fetch_row($vysledek); }
Ukončení vykonávání php skriptu se spojení ukončí, ale je slušností to udělat v rámci skriptu.
mysql_close($connect);
Funkce mysql_real_escape_string už přestává být podporovaná, doporučit použít přetypování například na intetger.
postačuje vstupy očetřit pomocí funkce mysql_real_escape_string(). Před zavoláním této fuknce je potřeba se přípojit k databázovému serveru.
$neco= mysql_real_escape_string($_POST[neco]); $neco = (int) $_POST[neco];
Pokud potřebujeme otestovat vše, můžeme použít toto univerzální řešení:
<?php foreach ($_REQUEST as $key=>$value) { $_REQUEST[$key]=$value; } ?>