Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z if-ami
Forum PHP.pl > Forum > Przedszkole
stefan_precz
  1. <?php
  2. $id = $_REQUEST['id'];
  3. include 'config.php';
  4. if(!isset($_SESSION['login'])) {
  5. if (!$_POST['login']) {
  6.  echo &#092;"<head><META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=iso-8859-2\">
  7. <link rel=&#092;"stylesheet\" type=\"text/css\" href=\"Obrazki/styl.css\"></head>\";
  8. echo &#092;"<form method=\"POST\" action=\"panel.php\"><center>
  9. <table width=223 border=0 cellpadding=0 cellspacing=0 height=&#092;"11\">
  10. <p align=&#092;"center\"><h1>Panel administracyjny </h1></p>
  11. <tr>
  12. <TD width=47 height=20 valign=&#092;"top\">login</TD>
  13. <TD width=62 height=20 valign=&#092;"top\">
  14. <input type=&#092;"text\" name=\"login\" size=\"20\"></TD>
  15. </tr>
  16. <tr>
  17. <TD width=47 height=20 valign=&#092;"top\">pass</TD>
  18. <TD width=62 height=20 valign=&#092;"top\">
  19. <input type=&#092;"password\" name=\"haslo\" size=\"20\"></TD>
  20. </tr>
  21. <tr>
  22. <TD width=47 height=20 valign=&#092;"top\"></TD>
  23. <TD width=62 height=20 valign=&#092;"top\">
  24. <input type=&#092;"submit\" value=\"Zaloguj\" size=\"20\"></TD>
  25. </tr>
  26. </table></center>&#092;";
  27. }
  28. else
  29. {
  30. $sql = &#092;"SELECT * FROM uzytkownicy WHERE login = '\".$_POST['login'].\"'\";
  31. $wykonaj = mysql_query($sql);  
  32. $login = mysql_fetch_array($wykonaj);
  33. if (!$_POST['haslo'] == $login['haslo']) {
  34.  echo 'Podales zle dane lub sesja jest juz nieaktywna.<br><a href=\"panel.php\">Spróbuj jeszcze raz</a>';
  35. }
  36. else
  37. {
  38.  $_SESSION['login'] = $login['login'];
  39.  echo 'Zostales pomyslnie zalogowany zapraszamy do panelu<br><a href=\"'.$_SERVER['PHP_SELF'].'\">Wejdz</a>';
  40. }
  41. }
  42. }
  43. else
  44. {
  45. echo &#092;"<head><META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=iso-8859-2\">
  46.  <link rel=&#092;"stylesheet\" type=\"text/css\" href=\"Obrazki/styl.css\"></head>
  47. <center>
  48. <table width=400 border=0 cellpadding=0 cellspacing=0 height=&#092;"100\">
  49. <tr>
  50. <TD width=114 height=23 valign=&#092;"top\" align=\"center\"><b>Kategorie</b><br>
  51.  </TD>
  52. <TD width=157 height=23 valign=&#092;"top\" align=\"center\"><b>Opisy</b></TD>
  53. <TD width=129 height=23 valign=&#092;"top\">
  54. <p align=&#092;"center\"><b>Zgłoszone</b></TD>
  55. </tr>
  56. <tr>
  57. <TD width=114 height=77 valign=&#092;"top\">
  58. <p align=&#092;"center\"><a href=\"panel.php?id=addcat\">- Dodaj</a><br>
  59. <a href=&#092;"panel.php?id=delcat\">- Skasuj</a></TD>
  60. <TD width=157 height=77 valign=&#092;"top\">
  61. <p align=&#092;"center\"><a href=\"panel.php?id=addop\">- Dodaj</a><br>
  62. <a href=&#092;"panel.php?id=delop\">- Skasuj</a></TD>
  63. <TD width=129 height=77 valign=&#092;"top\">
  64. <p align=&#092;"center\"><a href=\"panel.php?id=kolejka\">- Wyswietl</a></TD>
  65. </tr>
  66. </table></center>&#092;";
  67.  if ($id == &#092;"addcat\")
  68. {
  69. echo &#092;"<center><form action=\"panel.php?id=zapisz\" method=\"post\">
  70. <table border=&#092;"0\">
  71. <tr bgcolor=&#092;"#cccccc\">
  72. </tr>
  73. <tr>
  74. <td>Wpisz nazwę kategorii</td>
  75. <td align=&#092;"center\"><input type=\"text\" name=\"kategoria\" sizi=\"3\" maxlenght=\"3\"></td>
  76. </tr>
  77. <td colspan=&#092;"2\" align=\"center\"><input type=\"submit\" value=\"Dodaj\"></td>
  78. </tr>
  79. </table>
  80. </center>
  81. </form>&#092;";
  82. }
  83. elseif ($id == &#092;"zapisz\")
  84. {
  85.  echo &#092;"<head>
  86. <META HTTP-EQUIV=&#092;"Content-Type\" CONTENT=\"text/html; charset=iso-8859-2\">
  87. </head>&#092;";
  88. $kategoria = $_POST['kategoria'];
  89. if (!$kategoria)
  90. {  
  91. echo &#092;"podaj kategorie\";
  92. }
  93. include(&#092;"config.php\");
  94. $query = &#092;"INSERT INTO `kategorie` ( `id` , `kategoria` ) VALUES ('', '\".$_POST['kategoria'].\"')\";
  95. $result = mysql_query($query) or die(mysql_error());
  96. if($result > 0) {
  97.  echo(&#092;"<center>dziękujemy dane zostaly zapisane :)</center>\");
  98.  }
  99. elseif ($id == &#092;"addop\")
  100. {
  101. echo &#092;"<center><form action=\"panel.php?id=zapiszopis\" method=\"post\">
  102. <table border=&#092;"0\">
  103. <tr bgcolor=&#092;"#cccccc\">
  104. </tr>
  105. <tr>
  106. <td>Wpisz nazwę kategorii</td>
  107. <td align=&#092;"center\"><input type=\"text\" name=\"kategoria\" sizi=\"3\" maxlenght=\"3\"></td>
  108. </tr>
  109. <td colspan=&#092;"2\" align=\"center\"><input type=\"submit\" value=\"Dodaj\"></td>
  110. </tr>
  111. </table>
  112. </center>
  113. </form>&#092;";
  114.  
  115. }
  116. }
  117. }
  118. ?>

to plik panel.php wszystko w nim działa ok tylko mam problem taki to if-y

jest zrobione tak:
  1. <?php
  2. if ($id == &#092;"addcat\")
  3. {
  4. echo &#092;"tekst\"
  5. }
  6. elseif ($id == &#092;"zapisz\")
  7. {
  8. echo &#092;"tekst\"
  9. }
  10. elseif ($id == &#092;"addop\")
  11. {
  12. echo &#092;"tekst\"
  13. }
  14. ?>


Chodzi o to że wywołanie panel.php?id=addcat działa panel.php?id=zapisz działa a wszystki co znajduje się już w kolejnych if-ach lub elseif-ach nie działa co bym tam wstawił nie chce się wywołać
gilbo
prawdopodobnie masz wylaczone register_globals i musisz dodać taką linię,
  1. <?php
  2.  
  3. $id=$_GET['id'];
  4.  
  5. ?>

lub zrobić odrazu tak:
  1. <?php
  2.  
  3. if($_GET['id'] == &#092;"addcat\") //itp
  4.  
  5. ?>

lub jeszcze inaczej:
  1. <?php
  2.  
  3. switch($_GET['id'])
  4. {
  5. case 'addcat':
  6. //blok kodu w przypadku $id rownego addcat
  7. break;
  8. case 'zapisz':
  9. //blok kodu w przypadku $id rownego zapisz
  10. break;
  11. //itd
  12. }
  13.  
  14. ?>
Darti
średnio co 3-4 post dotyczy błędnego wykorzystania zmiennych z tablic $_POST i $_GET - skąd to się bierze?? tiredsmiley.gif to było pytanie retoryczne - nie odpowiadajcie winksmiley.jpg
stefan_precz
nie po prostu jeden if był źle zamknięty za późno i tutaj tkwił błąd smile.gif
Cysiaczek
Własnie php 5 w standardowych ustawieniach ma wyłaczone rgister_globals i jest to pozytywne. Owinni wogóle wywalić tą funkcję. A tak a propo, to nawet w książkach jest wszystko pokaywane na zmiennych globalnych. To jest irytujące, bo sam się tak nauczyłem, a później miałem problem ze zrozumieniem tablic _POST i _GET . ehh
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.