Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem ze skryptem, i funkcjami, include i zmiennymi
Fallout
post 21.02.2005, 15:51:47
Post #1





Grupa: Zarejestrowani
Postów: 154
Pomógł: 0
Dołączył: 17.12.2003
Skąd: Olsztyn

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


Witam,

na początek listingi ,niestety rozjezdzaja sie tu na forum sad.gif

Plik config.inc.php

  1. <?php
  2.  
  3. // system
  4. $img_sys_root = &#092;"img/sys/\";
  5. $img_prod_root = &#092;"img/prod/\";
  6. // bledy
  7. $blad = array( 'E_BASE'  => &#092;"Połącznie do bazy nie powiodło się!\",
  8. 'E_DB' => &#092;"Wybranie bazy nie powiodło się!\",
  9. 'E_QUERY' => &#092;"Pobranie danych nie powiodło się\");
  10. // baza
  11. $host = &#092;"xxxt\";
  12. $user  = &#092;"xxx\";
  13. $pass = &#092;"xxx\";
  14. $baza = &#092;"xxx\";
  15. // tabele
  16. $tab_end  = &#092;"</table>\";
  17. $cechy_tab_start = &#092;"<table border=1>
  18. <tr>
  19. <th><a href=&#092;"tabele.php?co=cechy&akcja=pokaz&jak=id_cn\">ID</a></th>
  20. <th><a href=&#092;"tabele.php?co=cechy&akcja=pokaz&jak=nazwa_cechy\">Nazwa Cechy</a></th>
  21. </tr>&#092;";
  22.  
  23. $cechy_tab_end = &#092;"<tr align=center>
  24. <td>$id_cn</td>
  25. <td>$nazwa_cechy</td>
  26.  </tr>&#092;";
  27.  
  28. $producenci_tab_start  = &#092;"<table border=1>
  29. <tr>
  30. <th><a href=&#092;"tabele.php?co=producenci&akcja=pokaz&jak=id_producent\">ID</a></th>
  31. <th><a href=&#092;"tabele.php?co=producenci&akcja=pokaz&jak=nazwa\">Nazwa Producenta</a></th>
  32. <th><a href=&#092;"tabele.php?co=producenci&akcja=pokaz&jak=www\">Adres WWW</a></th>
  33. <th>Logo</th>
  34. </tr>&#092;";
  35.  
  36. $producenci_tab_end =  &#092;"<tr align=center>
  37. <td>$id_producent</td>
  38. <td>$nazwa</td>
  39. <td>$www</td>
  40. <td><img src=&#092;"$img_prod_root$foto\"></td>
  41.  </tr>&#092;";
  42. ?>


plik tabele.php:

  1. <?php
  2. include 'tabele.inc.php';
  3. if (isset($_GET['co'])) { $co = $_GET['co']; } else $co = '';
  4. if (isset($_GET['akcja']))  { $akcja  = $_GET['akcja'];  } else $akcja  = '';
  5. if (isset($_GET['jak']))  { $jak  = $_GET['jak'];  } else $jak  = '';
  6. ?>
  7. <head>
  8. <meta http-equiv=\"content-type\" content=\"text/html; charset=iso-8859-2\">
  9. <title>Panel Administratora - Menu</title>
  10. </head>
  11. <center>
  12. <table border=\"1\">
  13. <tr><td><a href=\"tabele.php?co=cechy\"><strong>Cechy</strong></a></td></tr>
  14. <tr><td><a href=\"tabele.php?co=cechy&akcja=pokaz&jak=id_cn\">Pokaż listę cech</a></td></tr>
  15. <tr><td><a href=\"tabele.php?co=cechy&akcja=dodaj\">Dodaj cechę</a></td></tr>
  16. <tr><td><a href=\"tabele.php?co=cechy&akcja=kasuj\">Usuń cechy</a></td></tr>
  17. <tr><td><a href=\"tabele.php?co=cechy&akcja=zmien\">Popraw cechy</a></td></tr>
  18. </table> <br><br>
  19. <table border=\"1\">
  20. <tr><td><a href=\"tabele.php?co=producenci\"><strong>Producenci</strong></a></td></tr>
  21. <tr><td><a href=\"tabele.php?co=producenci&akcja=pokaz&jak=id_producent\">Pokaż listę producentów</a></td></tr>
  22. <tr><td><a href=\"tabele.php?co=producenci&akcja=dodaj\">Dodaj producenta</a></td></tr>
  23. <tr><td><a href=\"tabele.php?co=producenci&akcja=kasuj\">Usuń wpisy producentów</a></td></tr>
  24. <tr><td><a href=\"tabele.php?co=producenci&akcja=zmien\">Popraw wpisy producentów</a></td></tr>
  25. </table>
  26. <?php
  27. switch ($akcja)
  28. {
  29.  case 'pokaz':
  30.  pokaz($co,$jak);
  31.  break;
  32. }


i na koniec plik: tabele.inc.php

  1. <?php
  2.  
  3. include 'config.inc.php';
  4. function pokaz($co, $jak)
  5. {
  6. include 'config.inc.php';
  7. $p = mysql_connect($host,$user,$pass)  or Die ($blad['E_BASE']);
  8. $db = mysql_select_db($baza,$p)  or Die ($blad['E_DB']);
  9. $sql = &#092;"SELECT * FROM $co ORDER BY $jak\";
  10. $wynik = mysql_query($sql,$p)  or Die ($blad['E_QUERY']);
  11. switch ($co)
  12. {
  13. case 'cechy': echo $cechy_tab_start; break;
  14. case 'producenci': echo $producenci_tab_start; break;
  15. }
  16. while ($wiersz = mysql_fetch_array($wynik))
  17. {
  18. switch ($co)
  19. {
  20. case 'cechy':
  21. {
  22.  
  23.  $id_cn = $wiersz['id_cn'];
  24.  $nazwa_cechy = $wiersz['nazwa_cechy'];
  25. echo $cechy_tab_end;
  26. }
  27. break;
  28.  
  29. case 'producenci':
  30. {
  31. $id_producent = $wiersz['id_producent'];
  32.  $nazwa = $wiersz['nazwa'];
  33. $www = $wiersz['www'];
  34. $foto = $wiersz['foto'];
  35. echo $producenci_tab_end;
  36. }
  37. break;
  38.  
  39. }
  40. echo $tab_end;
  41. }
  42. }
  43.  
  44. ?>


A teraz problem... Nie działa biggrin.gif heeh no dobra..
jak wida idea skryptu jest aby zrobic uniwersalna funkcje do pobierania danych z bazy. taki byl plan.. niestety nie chodzi mi to mysle ze przez to ze includowane sa zmienne.. dobrze mysle?

ten sam skrypt mam rozbity na osobne tabele i wszystko chodzi. ale jako ze tabel jest pare i roznych operacji na nich jest tez kilka chcialem sobie ulatwic zycie a tu jak na zlosc..

tu jest przyklaodwy skrypt chodzacy "osobno" dla tabeli:

  1. <?php
  2.  
  3. function cechy_pokaz($jak)
  4. {
  5. include 'config.inc.php';
  6. $p = mysql_connect($host,$user,$pass) or Die(&#092;"Połącznie do bazy nie powiodło się!\");
  7. $db = mysql_select_db($baza,$p) or Die(&#092;"Wybranie bazy nie powiodło się!\");
  8. $sql = &#092;"SELECT * FROM cechy ORDER BY $jak\";
  9. $wynik = mysql_query($sql,$p) or Die(&#092;"Pobranie danych nie powiodło się\");
  10.  echo &#092;"<table border=1>
  11. <tr>
  12. <th><a href=&#092;"t_cechy.php?akcja=pokaz&jak=id_cn\">ID</a></th>
  13. <th><a href=&#092;"t_cechy.php?akcja=pokaz&jak=nazwa_cechy\">Nazwa Cechy</a></th>
  14. </tr>&#092;";
  15. while ($wiersz = mysql_fetch_array($wynik))
  16. {
  17.  $id_cn = $wiersz['id_cn'];
  18.  $nazwa_cechy = $wiersz['nazwa_cechy'];
  19. echo &#092;"<tr>
  20. <td>$id_cn</td>
  21. <td>$nazwa_cechy</td>
  22.  </tr>&#092;";
  23. }
  24. echo &#092;"</table>\";
  25.  
  26. }
  27.  
  28. ?>


troszke sie rozni to (1. jedna tabela, 2. bez bledow w tablicy, 3. odwolania do innych plikow) ale idea jest ta sama.. ..

dodam ze przy probie wykonywania nowego skryptu (wielotabelowego) mam od cholery notice`ow o nie zadeklarowanych zmiennych np. "Notice: Undefined variable: id_cn in (...) on line 23"

prosze pomozcie, nie ma sensu robic osobnych plikow z podobnymi funkcjami (dodaj,usun,zmien,itp) dla kazdej tabli gdy tylko zmieniaja sie zmienne i tabela...

z gory dziekuje z (p)odpowiedzi
pozdrawiam
Marcin

Ten post edytował Fallout 21.02.2005, 17:52:26


--------------------
Go to the top of the page
+Quote Post

Posty w temacie


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: 19.07.2025 - 17:15