Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zapytanie Select
dela
post 19.06.2009, 14:56:02
Post #1





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 16.06.2009

Ostrzeżenie: (0%)
-----


Może zacznę od najprostszego pytania czy zapytanie do bd "Select" zwraca wynik czy coś znalazło? Np. jak wykonuje zapytanie "INSERT" (oczywiście jak się wszystko powiedzie) to wyświetla mi wynik "News został dodany".

Ten post edytował dela 19.06.2009, 14:56:48
Go to the top of the page
+Quote Post
skowron-line
post 19.06.2009, 14:58:03
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


http://pl.php.net/manual/en/function.mysql-num-rows.php
Manual przyjacielu.


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
dela
post 19.06.2009, 15:02:50
Post #3





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 16.06.2009

Ostrzeżenie: (0%)
-----


Nie oto mi dokładnie chodzi... Mam następujący skrypcik:
  1. <?php
  2. $typ = addslashes ($_GET['typ']);
  3. $kraj = addslashes ($_GET['kraj']);
  4.    
  5.    $Zapytanie  = 'SELECT * FROM xxxxxxxxxxx WHERE typ = "'.$typ.'" AND kraj="'.$kraj.'"';
  6.    $Wynik = mysql_query($Zapytanie);
  7.    if ($Wynik) {
  8.    while ($Dane = mysql_fetch_array($Wynik, MYSQL_ASSOC)) {
  9.        echo '<a href="wyswietl.php?id='.$Dane['id'].'">';
  10.        echo '<div id="nieruchomosci_panel">';
  11.        echo '<div class="nieruchomosci_panel_foto">';
  12.        echo '<img src="nieruchomosc_miniatura/'.$Dane['miniatura'].'" width="90px" height="70px" border="0">';
  13.        echo '</div>';
  14.        echo '<div class="nieruchomosci_panel_nazwa">'.$Dane['nazwa_pl'].'</div>';
  15.        echo '<div class="nieruchomosci_panel_tresc_kratka">';
  16.        echo $Dane['typ'];
  17.        echo '</div>';
  18.        echo '<div class="nieruchomosci_panel_tresc_kratka">';
  19.        echo $Dane['kraj'];
  20.        echo '</div>';
  21.        echo '<div class="nieruchomosci_panel_tresc_kratka">';
  22.        echo $Dane['cena'], $Dane['jednostka'];
  23.        echo '</div>';
  24.        echo '<div class="nieruchomosci_panel_tresc_kratka">';
  25.        echo $Dane['powierzchnia'];
  26.        echo '</div>';
  27.        echo '</div>';
  28.        echo '</a>';
  29.    
  30.    }
  31.    mysql_free_result ($Wynik);
  32.    mysql_close();
  33.    }
  34.    
  35.    else
  36.    {
  37.           echo 'Nie znalaziono żadnych nieruchomość!';
  38.    }
  39. ?>


Chce zrobić tak że jak zapytanie select niczego nie znajdzie w bd to żeby wyświetliło komunikat Nie znalaziono żadnych nieruchomość! Zawsze robiłem to za pomocą if ale teraz nie chce się udać tego w cudować
Go to the top of the page
+Quote Post
skowron-line
post 19.06.2009, 15:13:57
Post #4





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


5 min temu o to samo kolega pytał.

http://pl.php.net/manual/en/function.mysql-query.php

Cytat
Return Values

For SELECT, SHOW, DESCRIBE, EXPLAIN and other statements returning resultset, mysql_query() returns a resource on success, or FALSE on error.

For other type of SQL statements, INSERT, UPDATE, DELETE, DROP, etc, mysql_query() returns TRUE on success or FALSE on error.

The returned result resource should be passed to mysql_fetch_array(), and other functions for dealing with result tables, to access the returned data.

Use mysql_num_rows() to find out how many rows were returned for a SELECT statement or mysql_affected_rows() to find out how many rows were affected by a DELETE, INSERT, REPLACE, or UPDATE statement.

mysql_query() will also fail and return FALSE if the user does not have permission to access the table(s) referenced by the query.


mysql_query tak jak ty robisz może Ci powiedzieć że zapytanie sie wykonało poprawnie ale nie powie Ci ile rekordów zwróciło.
Czyli jeżeli skrypt nie znajdzie żadnych nieruchomości ale się wykona poprawnie to
twój IF i tak się spełni, bo query zwroci true.


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
hostingekspert
post 19.06.2009, 16:14:04
Post #5





Grupa: Zarejestrowani
Postów: 51
Pomógł: 5
Dołączył: 12.04.2007
Skąd: 1=1

Ostrzeżenie: (0%)
-----


dla Twojego kodu

Kod
   .....
   $Wynik = mysql_query($Zapytanie);
   if (mysql_num_rows($Wynik)) {
      ...
   }
   ....


jesli znajdzie jakieś rekordy zwróci liczbę większą od 0, co zostanie zrzutowane jako true,
jeśli nie znajdzie żadnego rekordu zwróci 0, co zostanie zrzutowane jako false
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 16:21