Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php][mysql] funkcja mysql_query, właściwie zdefiniowanie własnej;)
KCG
post
Post #1





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

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


Otóż chciałbym sobie zdefiniować funkcję, która wywoływała by mysql_query, chodzi o to, że wpisuję sobie np. query($sql1) zamiast mysql_query($sql1), ponieważ lubię dodać sobie raportowanie błędów. Niżej jakieś nieudane próby (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Jak wpiszę echo query($sql), to wyświetli mi poprawnie zapytanie, ale się nie wykona, a, jak wywołam tylko query($sql), a później echo $result, to pojawia się Resource id #5 (IMG:http://forum.php.pl/style_emoticons/default/dry.gif)
  1. <?php
  2. function query($sql) {
  3. $result = mysql_query($sql) or die($sql.":<br />".mysql_errno()."<br />".mysql_error());
  4. return $result;
  5. }
  6. ?>

Pozdrawiam (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
bełdzio
post
Post #2





Grupa: Zarejestrowani
Postów: 690
Pomógł: 81
Dołączył: 6.04.2005
Skąd: Szczecin

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


pojawia się dlatego, że mysql_query nie zwraca stringa tylko zasób (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) jaki wg Ciebie miałby być efekt echo?
Go to the top of the page
+Quote Post
KCG
post
Post #3





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

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


No tak, tylko, jak zrobić, żeby działało? (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
strife
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 605
Pomógł: 96
Dołączył: 22.10.2004
Skąd: UK

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


Będzie to działać tylko, gdy będziemy pobierać jeden rekord. W przeciwnym wypadku nie otrzymamy wszystkich wyników. Chyba, że rozbudujemy tą funkcję (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Przykład:
  1. <?php
  2. function query( $sql )
  3. {
  4. $result = mysql_query( $sql );
  5. return mysql_fetch_array( $result ); // zwraca tablicę
  6. }
  7. $test = query("SELECT * FROM tabela WHERE id = 1");
  8. echo '<pre>';
  9. var_export( $test );
  10. echo '</pre>';
  11. ?>


Pozdrawiam!
Go to the top of the page
+Quote Post
Ociu
post
Post #5





Grupa: Moderatorzy
Postów: 1 566
Pomógł: 37
Dołączył: 14.05.2003
Skąd: Kraków




hm... może tak:
  1. <?php
  2. return ($result) ? TRUE : FALSE;
  3. ?>


Można tak zrobić, mysql_query nie wzraca stringa. Chyba, ze sam go "wzrócisz".
Go to the top of the page
+Quote Post
KCG
post
Post #6





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

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


Ociu nie rozumiem...
strife nie działa, zapisałem, jak Ty podałeś, później while($result) i nie pojawiło się nic (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) . Jak dodałem sobie echo, to wyświetliło się 'Array'

Chyba zostanę przy standardowym sposobie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 23:15