Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][HTML] Dziwny błąd
krzychu0808
post
Post #1





Grupa: Zarejestrowani
Postów: 428
Pomógł: 2
Dołączył: 1.04.2007
Skąd: Pogorzelica

Ostrzeżenie: (10%)
X----


Witam ma dziwny błąd robie formularz edycji danych i mam coś takiego ze jak się wejdzie to automatycznie sie zaznacza kobieta czy Mężczyzna i jak umieszczę ten kod w tabelce to działa a poza tabelką działa:
  1. <?php
  2. .....................................
  3.  
  4. //--------------------------- To poniżej nie działa nie mam zaznaczonego żadnego pola
  5. echo "<tr>";
  6. echo "<td border=\"1\" align=\"center\" width=\"30%\" nowrap>Płeć</td>";
  7. echo "<td  border=\"1\">";
  8. if($sex=="M") {
  9.  $check1 = "checked";
  10.  } elseif($sex=="K") {
  11.  $check2 = "checked";
  12. }
  13. echo "<input type=\"radio\" name=\"sex\" value=\"M\" $check1>Mężczyzna <input type=\"radio\" name=\"sex\" value=\"K\" $check2>Kobieta<br/>";
  14.  echo "</td></tr>";
  15.  
  16. echo '</div></table>';
  17.  
  18. //-------------------------- to poniżej działa
  19. echo '<B>Płeć</b><BR>';
  20. if($sex=="M") {
  21.  $check1 = "checked";
  22.  } elseif($sex=="K") {
  23.  $check2 = "checked";
  24. }
  25. echo "<input type=\"radio\" name=\"sex\" value=\"M\" $check1>Mężczyzna<br/><input type=\"radio\" name=\"sex\" value=\"K\" $check2>Kobieta<br/>";
  26. ?>


Ten post edytował krzychu0808 31.07.2008, 19:18:09
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
rafalp
post
Post #2





Grupa: Zarejestrowani
Postów: 224
Pomógł: 18
Dołączył: 4.02.2003
Skąd: Częstochowa

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


spróbuj konstrukcją:

  1. <?php
  2. if($check1)
  3. echo "<input type=\"radio\" name=\"sex\" value=\"M\" CHECKED>Mężczyzna<br/>
  4. else
  5. echo "<input type=&#092;"radio\" name=\"sex\" value=\"M\">Mężczyzna<br/>
  6.  
  7. if($check2)
  8. <input type=&#092;"radio\" name=\"sex\" value=\"K\" CHECKED>Kobieta<br/>";
  9. else
  10. <input type=&#092;"radio\" name=\"sex\" value=\"K\">Kobieta<br/>";
  11. ?>


a wcześniej
daj tylko
  1. <?php
  2. if($sex=="M") {
  3.  $check1 = true;
  4.  } elseif($sex=="K") {
  5.  $check2 = true;
  6. ?>


--------------------
Go to the top of the page
+Quote Post
Zyx
post
Post #3





Grupa: Zarejestrowani
Postów: 952
Pomógł: 154
Dołączył: 20.01.2007
Skąd: /dev/oracle

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


Zapraszam do podglądu źródła - skrypt, choć ma parę błędów, w tym wypadku działa dobrze. To kod HTML jest zły i powoduje, że przeglądarka głupieje.

Zacznijmy od HTML-a. To, co zrobiłeś, nie jest żadną tabelką, tylko... no właśnie? Nie ma żadnego znacznika rozpoczynającego tabelkę, chociaż kończący, nie wiadomo skąd, się pojawia. Ponadto skąd ty tego DIV-a wziąłeś? Ten znacznik przecież nie może się znajdować wewnątrz TABLE.

Kod PHP. Po pierwsze, jak pobierasz dane z formularza, to stosuje się do tego superglobalną tablicę $_POST. Inaczej sam się prosisz o kłopoty na jakiejkolwiek innej wersji PHP innej niż muzealna. Same zmienne powinno się inicjować przed ich pierwszym użyciem. Uruchamiając Twój kod, dostałem:

Cytat
Płeć
Notice: Undefined variable: check2 in /home/lighttpd/vhosts/Sites/test/www/tabelka.php on line 13
[ ] Mężczyzna [ ] Kobieta
Płeć

Notice: Undefined variable: check2 in /home/lighttpd/vhosts/Sites/test/www/tabelka.php on line 25
[X] Mężczyzna
[ ] Kobieta


Spróbuj to poprawić samodzielnie - dałem Ci wszystkie wskazówki. Nie wiem, z czego się uczysz, ale naprawdę dziwne rzeczy piszą tam o tworzeniu tabelek w HTML-u, zaś informacje dot. PHP są wybitnie przestarzałe.

PS. Rafalp, jak już dajesz gotowy kod, to mógłbyś się postarać, by chociaż sprawiał on wrażenie poprawnego smile.gif.

Ten post edytował Zyx 31.07.2008, 19:42:45


--------------------
Specjalista ds. głupich i beznadziejnych, Zyx
Nowości wydawnicze: Open Power Collector 3.0.1.0 | Open Power Autoloader 3.0.3.0
Go to the top of the page
+Quote Post
rafalp
post
Post #4





Grupa: Zarejestrowani
Postów: 224
Pomógł: 18
Dołączył: 4.02.2003
Skąd: Częstochowa

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


Cytat(Zyx @ 31.07.2008, 20:41:13 ) *
PS. Rafalp, jak już dajesz gotowy kod, to mógłbyś się postarać, by chociaż sprawiał on wrażenie poprawnego smile.gif.


Hehe, sorki spieszyłem się i próbowałem nakreslić mój tok myślenia żeby kolega sobie ładnie dopracował to sam ew spróbował inaczej to napisać.


--------------------
Go to the top of the page
+Quote Post
krzychu0808
post
Post #5





Grupa: Zarejestrowani
Postów: 428
Pomógł: 2
Dołączył: 1.04.2007
Skąd: Pogorzelica

Ostrzeżenie: (10%)
X----


Już działa poprawiłem:
  1. <?php
  2. echo '<form method="post" action="edytuj.php">';
  3.  
  4.  echo '<div align="center"><table width="600px" border="1">';
  5.  echo " <tr> 
  6. <td border=\"1\" align=\"center\" width=\"40%\" nowrap>Nazwa Użytkownika</td> 
  7. <td  border=\"1\">$userid</td> 
  8. </tr>";
  9. echo " <tr> 
  10. <td border=\"1\" align=\"center\" width=\"30%\" nowrap>E-mail</td> 
  11. <td  border=\"1\"><input type=\"text\" name=useremail value=\"$useremail\"></td> 
  12. </tr>";
  13. echo " <tr> 
  14. <td border=\"1\" align=\"center\" width=\"30%\" nowrap>Imię i Nazwisko</td> 
  15. <td  border=\"1\"><input type=\"text\" name=\"username\" value=\"$username\"></td> 
  16. </tr>";
  17. echo "<tr>";
  18. echo "<td border=\"1\" align=\"center\" width=\"30%\" nowrap>Data Urodzenia</td>";
  19. echo "<td  border=\"1\">";
  20. $data1 = explode('-',$dataur);
  21. $rok1 = $data1[0];
  22. $miesiac1 = $data1[1];
  23. $dzien1 = $data1[2];
  24.  echo "<select name=\"dzien\" value=\"$dzien1\" onKeyUp=\"CheckDigits(this)\">";
  25. for ($i=01; $i<=31; $i++) {
  26. $sel = '';
  27. if ($dzien1 == $i) {$sel=' selected ';}
  28. if($i < 10) { echo '<option value="0'.$i.'" '.$sel.' >0'.$i.'</option>'; }
  29. else { echo '<option value="'.$i.'" '.$sel.' >'.$i.'</option>'; }
  30. }
  31. echo '</select>';
  32.  
  33. $miesiace = array(
  34. '01' => 'Styczeń',
  35. '02' => 'Luty',
  36. '03' => 'Marzec',
  37. '04' => 'Kwiecień',
  38. '05' => 'Maj',
  39. '06' => 'Czerwiec',
  40. '07' => 'Lipiec',
  41. '08' => 'Sierpień',
  42. '09' => 'Wrzesień',
  43. '10' => 'Pazdziernik',
  44. '11' => 'Listopad',
  45. '12' => 'Grudzień' 
  46. );
  47.  
  48. echo '
  49. -
  50. <select name="miesiac" onKeyUp="CheckDigits(this)">';
  51. foreach($miesiace as $nr => $miesiac){
  52. if($miesiac1 == $nr)
  53. echo('<option value="'.$nr.'" selected="selected">'.$miesiac.'</option>');
  54. else
  55. echo('<option value="'.$nr.'">'.$miesiac.'</option>');
  56. }
  57. echo '</select>
  58. - ';
  59.  
  60. echo "<select name=\"rok\" value=\"$rok1\" onKeyUp=\"CheckDigits(this)\">";
  61. for ($i=2008; $i>=1950; $i--) {
  62. $sel = '';
  63. if ($rok1 == $i) {$sel=' selected ';}
  64. echo '<option value="'.$i.'" '.$sel.' >'.$i.'</option>';
  65. }
  66. echo '</select>';
  67.  echo "</td></tr>";
  68.  
  69.  echo "<tr>";
  70. echo "<td border=\"1\" align=\"center\" width=\"30%\" nowrap>Płeć</td>";
  71. echo "<td  border=\"1\">";
  72. if($sex=="M") {
  73.  $check1 = true;
  74.  } elseif($sex=="K") {
  75.  $check2 = true;}
  76.  
  77.  if($check1)
  78. echo "<input type=\"radio\" name=\"sex\" value=\"M\" CHECKED>Mężczyzna ";
  79. else
  80. echo "<input type=\"radio\" name=\"sex\" value=\"M\">Mężczyzna ";
  81.  
  82. if($check2)
  83. echo "<input type=\"radio\" name=\"sex\" value=\"K\" CHECKED>Kobieta ";
  84. else
  85. echo "<input type=\"radio\" name=\"sex\" value=\"K\">Kobieta ";
  86.  echo "</td></tr>";
  87.  echo " <tr> 
  88. <td border=\"1\" align=\"center\" width=\"40%\" nowrap>Miasto</td> 
  89. <td  border=\"1\"><input type=\"text\" name=useradres value=\"$useradres\"></td> 
  90. </tr>";
  91.  echo " <tr> 
  92. <td border=\"1\" align=\"center\" width=\"40%\" nowrap>Kraj</td> 
  93. <td  border=\"1\"><input type=\"text\" name=usercountry value=\"$usercountry\"></td> 
  94. </tr>";
  95.  echo " <tr> 
  96. <td border=\"1\" align=\"center\" width=\"40%\" nowrap>Pseudonim szkolny</td> 
  97. <td  border=\"1\"><input type=\"text\" name=pseudonim value=\"$pseudonim\"></td> 
  98. </tr>"; 
  99.  echo " <tr>
  100.  <td border=\"1\" align=\"center\" width=\"40%\" nowrap>O Sobie</td>
  101.  <td  border=\"1\">";
  102.  echo "<textarea rows=\"5\" cols=\"41\" name=\"opis\" maxlength=\"200\">$opis</textarea><br/>
  103.  </td></tr>";
  104.  echo " <tr>
  105.  <td border=\"1\" align=\"center\" width=\"40%\" nowrap>Zainteresowania</td>
  106.  <td  border=\"1\">";
  107.  echo "<textarea rows=\"3\" cols=\"41\" name=\"zainteresowania\" maxlength=\"200\">$zainteresowania</textarea><br/>
  108.  </td></tr>";
  109.  
  110. echo " <tr> 
  111. <td border=\"1\" align=\"center\" width=\"40%\" nowrap>Numer Gadu-Gadu</td> 
  112. <td  border=\"1\"><input type=\"text\" name=\"usergg\" maxlength=\"10\" size=\"7\" value=\"$usergg\"></td> 
  113. </tr>";
  114.  
  115. echo '</table>';
  116. echo '<br/><input type="submit" value="Zapisz Zmiany">';
  117. echo '<input type="hidden" name="form_wyslany" value="1">';
  118. echo '</form>';
  119. echo '</div>';
  120. ?>


Ten post edytował krzychu0808 31.07.2008, 20:25:50
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 Aktualny czas: 19.08.2025 - 10:50