Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Wywołanie komend przypisanych do kodu
Forum PHP.pl > Forum > Przedszkole
fakenmr
Witam zrobiłem formularz szukania przesyłki po wpisaniu nr przesyłki wyskakuje mi gdzie ona jest imię nazwisko i miejscowość i czy jest w drodze czy nie .Natomiast po wpisaniu byle jakiego nr np. 23345 wyskakuje to samo co niżej tylko ze imie nazwisko typ przesyłki jest puste a chciałbym żeby jak ktoś będzie szukał to żeby wpisywał cały 20-cyfrowy nr nadania( w liście poleconym polskim a w zagranicznym 13 )a jeżeli będzie krótszy żeby wyskakiwał komunikat nieprawidłowy nr nadania , a przy braku takiej przesyłki o takim numerze ( Brak przesyłki o podanym numerze)
Wiem ,że to jest łatwe a ja kombinuje i kombinuje no i du*** blada nic nie wychodzi ... Dziękuję za wszelką pomoc


  1. <form action="" method="get" name="frm_insert" id="frm_insert">
  2. <table width="0" border="0" cellpadding="0" cellspacing="0" id="tbl_insert">
  3. <tr>
  4. <th scope="row"><label for="frmsch">Szukaj Przesyłki:</label></th>
  5. <td>
  6. <input name="frmsch" type="text" class="frmfld" id="frmsch"></td>
  7. <td><input type="submit" name="btn" id="btn" value="Szukaj"></td>
  8. </tr>
  9. </table>
  10. </form>

  1. <?
  2. //wyszukiwanie przesyłki
  3. if($_GET['frmsch'])
  4. {
  5. include 'config.php';
  6.  
  7. $sql1 = mysql_query("SELECT * FROM przesylki where nr_nadania='".$_GET['frmsch']."' limit 1");
  8. $lista1 = mysql_fetch_array($sql1 );
  9. //wyswietlanie wyszukanej przesyłki
  10.  
  11. ?>
  12. <h1>Przesyłka numer:</h1>
  13. <p>
  14. <?=$lista1['nr_nadania']?>
  15. <br><br>
  16. Aderat: <br>
  17. <?=$lista1['imie_adres']?> <?=$lista1['nazwisko_adres']?><br>
  18. <?=$lista1['ulica_adres']?> <?=$lista1['kod_poczt_adres']?><br>
  19. <?=$lista1['miasto_adres']?><br><br>
  20. Typ przesyłki: <?=$_typ[$lista1['typ']]?><br><br>
  21. <?
  22. if($lista1['czy_doreczona'])
  23. echo 'Przesyłka została dostarczona w wyznaczone miejsce';
  24. else
  25. echo'Przesyłka w drodze';
  26.  
  27. }
  28. ?>
gorden
w tym wypadku - wystarczy sam warunek + mysql_num_rows
fakenmr
Cytat(gorden @ 11.04.2012, 21:53:09 ) *
w tym wypadku - wystarczy sam warunek + mysql_num_rows



Ja rozumiem a jak zrobić żeby mi tego nie wyświetlało questionmark.gifquestionmark.gif

  1. <?
  2. //wyszukiwanie przesyłki
  3. if($_GET['frmsch'])
  4. {
  5. include 'config.php';
  6.  
  7. $sql1 = mysql_query("SELECT * FROM przesylki where nr_nadania='".$_GET['frmsch']."' limit 1");
  8. $lista1 = mysql_fetch_array($sql1 );
  9. //wyswietlanie wyszukanej przesyłki
  10.  
  11. ?>
  12. <h1>Przesyłka numer:</h1>
  13. <p>
  14. <?=$lista1['nr_nadania']?>
  15. <br><br>
  16. Aderat: <br>
  17. <?=$lista1['imie_adres']?> <?=$lista1['nazwisko_adres']?><br>
  18. <?=$lista1['ulica_adres']?> <?=$lista1['kod_poczt_adres']?><br>
  19. <?=$lista1['miasto_adres']?><br><br>
  20. Typ przesyłki: <?=$_typ[$lista1['typ']]?><br><br>
  21. <?
  22. if($lista1['czy_doreczona'])
  23. echo 'Przesyłka została dostarczona w wyznaczone miejsce';
  24. else
  25. echo'Przesyłka w drodze';
  26.  
  27. }
  28. ?>


Ponieważ to mi się cały czas wyświetla czyli takie coś puste


Przesyłka numer:


Aderat:




Typ przesyłki:

Przesyłka w drodze
maniana
Zastosuj warunek
  1. if(!empty($lista1)){ ...

Poza tym od początku należy się nauczyć filtrowania danych wejściowych od użytkownika. Najprościej tak:
  1. $sql1 = mysql_query("SELECT * FROM przesylki where nr_nadania='".mysql_real_escape_string($_GET['frmsch'])."' limit 1");
fakenmr
no ale dalej nie mogę dojść do tego jak zrobić żeby tamte puste pola mi się nie wyświetlały . teraz warunki mi się wyświetlają ale także i tamto czego nie powinno być też sad.gif
Mianowicie

Kod
Przesyłka numer:


Aderat:




Typ przesyłki:

Przesyłka w drodze
maniana
Tak jak gorden napisał:
  1. <?php
  2. if($_GET['frmsch']) {
  3. include 'config.php';
  4. $sql1 = mysql_query("SELECT * FROM `przesylki` WHERE `nr_nadania`='".mysql_real_escape_string($_GET['frmsch'])."' LIMIT 1");
  5. if(mysql_num_rows($sql1)==1){
  6. $lista1 = mysql_fetch_array($sql1);
  7. ?>
  8. <h1>Przesyłka numer:</h1>
  9. <p>
  10. <?=$lista1['nr_nadania']?>
  11. <br><br>Aderat: <br>
  12. <?=$lista1['imie_adres']?> <?=$lista1['nazwisko_adres']?><br>
  13. <?=$lista1['ulica_adres']?> <?=$lista1['kod_poczt_adres']?><br>
  14. <?=$lista1['miasto_adres']?><br><br>
  15. Typ przesyłki: <?=$_typ[$lista1['typ']]?></p>
  16. <?
  17. if($lista1['czy_doreczona']) echo '<p>Przesyłka została dostarczona w wyznaczone miejsce</p>';
  18. else echo'<p>Przesyłka w drodze</p>';
  19. }else{
  20. echo '<p>Brak...</p>';
  21. }
  22. }
  23. ?>


Edit: Do sprawdzania tablic z których wyświetlasz dane użyj print_r lub var_dump
fakenmr
dziękuję za pomoc Temacik do Zamknięcia
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.