Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: kołopot z FOREACH
Forum PHP.pl > Forum > PHP
3miel
Witam,

mam taki formularz w którym po juz wykonaniu wychodzi takie cos:

<input type=hidden name="nr[]" value="56">

i teraz chce zrobic takie coś w pliku który jest w action:

  1. <? 
  2. foreach($_POST['nr'] as $di) 
  3.       { 
  4. $di2 = &#092;"$_POST['nr'][$di]\"; 
  5. $zapytanie=&#092;"DELETE FROM sms_menu WHERE id= '$di2'\"; 
  6. $wykonaj = mysql_query($zapytanie) or die ('Nie można usunać! '.mysql_error()); 
  7.       } 
  8. echo '<div align=center>[ '; 
  9. echo '<a href=# onclick=history.go(-2)>&lt;&lt; Wstecz</a> ]'; 
  10. echo '</div>'; 
  11. ?>



ale wywala mi takie coś:

Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/gsm/public_html/admin/viewa.php(80) : eval()'d code on line 226

włąsnie w tej lini gdzie jest definiowana zmienna di2. mozna to jakoś zmienić?

Jak zmeinie tą zmienną $di2 i dam tam to bez cudzysłowiów to nie ma błeduł ale też nic sie nie dzieje! (sprawdziłemto przez echo $di2;)
silent
  1. <? 
  2. foreach($_POST['nr'] as $di) { 
  3. $zapytanie=&#092;"DELETE FROM sms_menu WHERE id= '$di'\"; 
  4. $wykonaj = mysql_query($zapytanie) or die ('Nie można usunać! '.mysql_error()); 
  5. } 
  6. echo '<div align=center>[ '; 
  7. echo '<a href=# onclick=history.go(-2)>&lt;&lt; Wstecz</a> ]'; 
  8. echo '</div>'; 
  9. ?>
3miel
dzięki! a ja się męczyłem a tu takie proste rozwiązanie smile.gif jeszczeraz wielkie dzieki smile.gif

-------EDIT----------

ale za szybko napisałem tamtego posta:/ teraz tak samo robię edycję i tam jest więcej zmeinnych:/ i mam taki kod:

  1. <? 
  2. foreach($_POST['di'] as $di) 
  3. { 
  4. $zapytanie=&#092;"UPDATE sms_menu SET id='$_POST['di_n'][$di]', dzial=' $_POST['dzial'][$di]', strona=' $_POST['strona'][$di]', nr=' $_POST['nr'][$di]', linki=' $_POST['linki'][$di]' WHERE id='$di'\"; 
  5. $wykonaj = mysql_query($zapytanie) or die ('Nie można dodać! '.mysql_error()); 
  6. } 
  7. echo '<div align=center>[ '; 
  8. echo '<a href=# onclick=history.go(-2)>&lt;&lt; Wstecz</a> ]'; 
  9. echo '</div>'; 
  10. ?>


i pisze bład:

Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/gsm/public_html/admin/viewa.php(80) : eval()'d code on line 261

to jest włąsnie ta linia gdzi ejest UPDATE :/
silent
Podaj kod formularza.
3miel
  1. <?
  2. echo '<form action=viewa.php method=post>';
  3. echo '<input type=hidden name=id value=5>';
  4. echo '<input type=hidden name=upraw value=4>';
  5. echo '<input type=hidden name=mod value=8>';
  6.  
  7. foreach($_POST['option'] as $di) 
  8. { 
  9. $zapytanie=&#092;"SELECT * FROM sms_menu WHERE id='$di'\";
  10. $wykonaj=mysql_query($zapytanie);
  11. while($pole = mysql_fetch_array($wykonaj))
  12. {
  13. echo '<table border=0 align=center cellspacing=0 cellpadinng=0>';
  14. echo '<tr><td>ID: </td><td><input type=text name=\"di_n[]\" maxlength=2 size=2 value='.$pole['id'].'><input type=hidden name=di[] value='.$pole['id'].'></td></tr>';
  15. echo '<tr><td>Dział:</td><td><input type=text name=\"dzial[]\" maxlength=25 value=\"';
  16. echo $pole['dzial'];
  17. echo '\"></td></tr>';
  18. echo '<td>Strona:</td><td><select name=\"strona[]\">';
  19. if ($pole['strona']==l){
  20. echo '<option value=l selected>l<option value=p>p';
  21. }else{ 
  22. echo '<option value=p selected>p<option value=l>l';
  23. }
  24. echo '</select></td></tr><td>Nr:</td><td><input type=text name=\"nr[]\" maxlength=2 value=\"';
  25. echo $pole['nr'];
  26. echo '\"> </td></tr>';
  27. echo '<td>Linki:</td><td><textarea name=\"linki[]\" rows=10 cols=50>';
  28. $pole['linki'] = str_replace ('&', '&amp;', $pole['linki']);
  29. echo $pole['linki'];
  30. echo '</textarea></td></tr>';
  31. echo '<td colspan=2 align=center><hr></td></tr></table><br>';
  32. }
  33. }
  34. echo '<div align=center><input type=submit value=Zapisz> <input type=\"button\" onclick=\"history.back()\" value=\"Wstecz\"></form></div>';
  35. ?>


to jest formularz który wyświetla dane w formularzacz. ten formularza wyswietla się tyle razy ile jest zaznaczoneych checkbox'ów
silent
  1. <? 
  2. foreach($_POST['di'] as $klucz=>$di) 
  3. { 
  4. $zapytanie=&#092;"
  5. UPDATE
  6. sms_menu
  7. SET
  8. id='\".$_POST['di_n'][$klucz].\"',
  9. dzial='\".$_POST['dzial'][$klucz].\"',
  10. strona='\".$_POST['strona'][$klucz].\"',
  11. nr='\".$_POST['nr'][$klucz].\"',
  12. linki='\".$_POST['linki'][$klucz].\"'
  13. WHERE
  14. id='\".$di.\"'
  15. &#092;"; 
  16. $wykonaj = mysql_query($zapytanie) or die ('Nie można dodać! '.mysql_error()); 
  17. } 
  18. echo '<div align=center>[ '; 
  19. echo '<a href=# onclick=history.go(-2)>&lt;&lt; Wstecz</a> ]'; 
  20. echo '</div>'; 
  21. ?>
3miel
nooooo teraz to jest najlepiej na świecie smile.gif wspaniale
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.