Pagina 1 din 1

Obtinere valoare din rand din Select cu MySQLi fara WHILE

Scris: Sâm Ian 26, 2013
de bordanc_nicu
Salut, vreau sa stiu cum fac o interogare la baza de date folosind metoda de la lectia 31 (cu MySQLi), postez eventual metoda veche de interogare:

Cod: Selectaţi tot

$getinchis=mysql_fetch_array(mysql_query("SELECT value FROM tabela_setari WHERE name='siteinchis'"));
if($getinchis[0]!="1")
{
  echo "apare un mesaj cand site-ul e inchis";
}
Nu doresc metoda cu while, pentru ca in multe locuri am de selectat valori doar dintr-un rand.
Am reusit in alte locuri sa selectez cu while, dar interogari pentru un singur rand nu imi reusesc nici cum.

- Si mai am o intrebare: daca am interogari si in anumite functii, trebuie sa definesc variabila de conectare la baza de date ($conn) ca si variabila globala in fiecare functie?

Obtinere valoare din rand din Select cu MySQLi fara WHILE

Scris: Sâm Ian 26, 2013
de MarPlo
Daca Select-ul returneaza doar un singur rand, poti prelua acel rand intr-o variabila si va contine un array cu datele din acel rand. Din care poti folosi valoarea preluata fara while(), ca in acest exemplu:

Cod: Selectaţi tot

// conecteaza la baza de date
$conn = new mysqli('localhost', 'root', 'pass', 'numedb');

// verifica conexiunea
if (mysqli_connect_errno()) {
  exit('Connect failed: '. mysqli_connect_error());
}

// interogare sql SELECT 
$sql = "SELECT value FROM tabela_setari WHERE name='siteinchis' LIMIT 1"; 

// executa interogarea si retine datele returnate
$result = $conn->query($sql);

// daca $result contine cel putin un rand
if ($result->num_rows > 0) {
  // preia si foloseste datele din randul din $result
  $row = $result->fetch_array();
  if($row['value'] != 1) {    // sau se poate si $row[0]
    echo 'apare un mesaj cand site-ul e inchis';
  }
  else echo $row[0];
}
else echo '0 rezultate';

$conn->close();
- Daca vrei sa folosesti variabila de conectare la baza de date ($conn) in interiorul unor functii, da, trebuie definita ca si variabila globala in fiecare functie, sau o poti transfera printr-un parametru al functiei.

Re: Obtinere valoare din rand din Select cu MySQLi fara WHIL

Scris: Sâm Ian 26, 2013
de bordanc_nicu
MS foarte mult, am reusit pana la urma doar cu ajutorul acelui cod, dar nu am mai folosit si functia num_rows.