Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]Zapytanie MySQL o wersję, z poziomu PHP
Forum PHP.pl > Forum > Przedszkole
castagir
Witam!

Jak zadać pytanie dla MySQL, żeby otrzymać odpowiedź jaką ma wersję hosta.

Na razie napisałem taki skrypt, lecz nie wiem dlaczego nic nie wyświetla.
  1. try {
  2. $polaczenieBD = new PDO('mysql:host='.$nazwaSerweraBD.';dbname='.$nazwaBD, $uzytkownikBD, $hasloBD);
  3. } catch (PDOExeption $e) {
  4. echo ($e->getMessage());
  5. }
  6. $pytanie = $polaczenieBD->prepare("SELECT VERSION() as wersja");
  7. if($pytanie->execute()) {
  8. echo 'Połączenie z bazą danych zostało wykonane!'; // tutaj wcześnie wpisywałem: while($w = $pytanie->fetch(PDO::FETCH_ASSOC)) { $wersjaMysql = $w['wersja']; } echo $wersjaMysql;
  9. }
  10. else {
  11. $odpowiedz .= '<p class="blad">Nie udało połączyć się z bazą danych!<br />Wypełnij pola jeszcze raz.</p>';
  12. // echo $odpowiedz;
  13. }
Pyton_000
http://php.net/manual/en/pdostatement.fetchall.php #1 Example
castagir
Wciąż nic.

Może problem leży w pytaniu?
Pyton_000
SHOW VARIABLES LIKE "%version%";
castagir
Nadal nic.

Zamiast %version% podstawić mam coś czy o co chodzi?
Pyton_000
pokaż kod
castagir
Właśnie nawet błędu nie pokazuje. Nie rozumiem w ogóle o co może chodzić.

Ogólnie wszystko przekazuję do skryptu js, który wyświetla go na stronie.
Pyton_000
Którego słowa nie zrozumiałeś?

"pokaż" czy "kod" ?
castagir
  1. try {
  2. $polaczenieBD = new PDO('mysql:host='.$nazwaSerweraBD.';dbname='.$nazwaBD, $uzytkownikBD, $hasloBD);
  3. } catch (PDOExeption $e) {
  4. echo ($e->getMessage());
  5. }
  6. $pytanie = $polaczenieBD->prepare("SHOW VARIABLES LIKE "%version%"");
  7. $pytanie->execute();
  8. $wynik = $pytanie->fetchAll();
  9. echo $wynik;
robertpiaty
Przecież Ty jako odpowiedź dostajesz tablicę. Zamiast echo użyj print_r lub var_dump i wtedy zobacz co dostajesz w odpowiedzi.
castagir
Dostaje NIC, null, '', nothing, kein ding.

Żadna z tych metod, a gdy próbuję wpisać: SHOW VARIABLES LIKE "%version%", otrzymuję to

Notice: Use of undefined constant version - assumed 'version',
Warning: Division by zero,
Warning: Division by zero,

Może moje pytanie powinno brzmieć, czy w ogóle da się zapytać MySQL o wersję z poziomu PHP, lub czy może jest jakaś funkcja PHP, która to umożliwia?
robertpiaty
Zamień
  1. $pytanie = $polaczenieBD->prepare("SHOW VARIABLES LIKE "%version%"");

na
  1. $pytanie = $polaczenieBD->prepare('SHOW VARIABLES LIKE "%version%"');
castagir
Ok. To pomogło biggrin.gif

Dzięki bardzo i pozdrawiam!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.