Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z danymi z $HTTP_POST_VARS
Forum PHP.pl > Forum > PHP
mike20
Czy ktos moze wie o co moze chodzic, bo ja juz nie mam zielonego pojecia. Mam na stronie kilka list rozwijanych (te same pola do wyboru), ktore wyswietlam tak:
  1. <?php
  2.  
  3. for($i=1;$i<=$ilosc;$i++)  
  4. { 
  5. if($i==1)  
  6.  {echo &#092;"<B>$data[$j]<BR></B>\";$j++;}  
  7. else if($i-1==$podzial[$j-1])  
  8. {echo &#092;"<B>$data[$j]<BR></B>\";$j++;}  
  9. echo &#092;"<SELECT NAME=gosp$i>\";  
  10. echo &#092;"<option value='0'>wybierz gospodarza...</option>\";
  11.  for($l=1;$l<=18;$l++)  
  12. {
  13.  echo &#092;"<option value=\"$id[$l]\">$druzyna[$l]</option>\";  
  14. }
  15.  echo '</SELECT> - ';  
  16. echo &#092;"<SELECT NAME=gos$i>\";  
  17. echo &#092;"<option value='0'>wybierz go&para;cia...</option>\";  
  18. for($l=1;$l<=18;$l++)
  19.  {
  20. echo &#092;"<option value=\"$id[$l]\">$druzyna[$l]</option>\"; 
  21.  }
  22. echo '</SELECT><BR>';  } ?> 
  23. </P> <INPUT TYPE=\"SUBMIT\" VALUE=\"Wprowadż\">

A potem drugi skrypt wczytuje te wartosci do bazy danych, pobierajac je najpierw z HTTP_POST_VARS:

  1. <?php
  2.  
  3. for($nr=1;$nr<=$ilosc;$nr++) {
  4. $query=&#092;"SELECT id FROM spotkanie WHERE id='$nr'\"; $result=mysql_query($query); 
  5. $row=mysql_fetch_array($result); 
  6. $zrodlo=stripslashes($row[0]); 
  7. $dane=$HTTP_POST_VARS[&#092;"gosp$nr\"]; 
  8. echo &#092;"$nr. $danen\"; //tak sprawdzam czy pobralo dobre dane dla danej listy 
  9. if($zrodlo)
  10.  $query=&#092;"UPDATE spotkanie SET gosp='$dane' WHERE id=$nr\"; 
  11. else  
  12.  $query=&#092;"INSERT INTO spotkanie (id,gosp) values('$nr','$dane')\"; mysql_query($query); } 
  13. for($nr1=1;$nr1<=$ilosc;$nr1++) {
  14.  $query1=&#092;"SELECT id FROM spotkanie WHERE id='$nr1'\"; $result1=mysql_query($query1); 
  15. $row1=mysql_fetch_array($result1); 
  16. $zrodlo1=stripslashes($row1[0]); 
  17. $dane1=$HTTP_POST_VARS[&#092;"gos$nr1\"]; 
  18. echo &#092;"$nr1. $dane1\"; //tak sprawdzam czy pobralo dobre dane dla danej listy 
  19.  
  20. ?>


Problem jest taki, ze ten drugi skrypt pobiera czesto zle wartosci z tych pol, np tylko od 1-4, albo nic, albo 0, podczas gdy wartosci sa prawidlowe od 1-18. Po jakims czasie, powiedzmy po godzinie, probuje jeszcze raz, bez zadnych zmian w skrypcie - wszystko dziala jak nalezy, prawidlowe wartosci pokazuje. Nie mam pojecia co sie dzieje, przeciez chyba to niemozliwe zeby raz dzialalo a drugi raz nie. Myslalem ze moze trzeba jakos czyscic zawartosc HTTP_POST_VARS bo zostaja w niej jakies szczatki innych stron, dlatego dalem w naglowku obu plikow: <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> Ale to nic nie dalo, moze sa jeszcze jakies inne polecenia? Naprawde nie mam pojecia co jest zle, bede niezmiernie wdzieczny jezeli ktos rzuci na to okiem i mi podpowie.


________________________
[zmoderowane]
Proszę używać BBCode /BzikOS
arlo
musiales sie gdzies walnac, ale nie wiem gdzie winksmiley.jpg
Vertical
Na przyszłość- używaj BBcode. To nie boli! A poza tym, za jego brak, możesz dostać ostrzeżenie!
rogrog
popraw swojego posta dodając tag [php] i wsystko od razu będzie czytelniejsze... i będzie łatwiej ci pomóc!
roobik
Temat odświeżę, gdyż wysłano do mnie PW o poprawienie tego kodu...
Na początek polecam usunąć wszystkie & # 0 9 2 ; (sory, musiałem napisać ze spacjami, bo używając BBCode nie mogłem tego zamieścić...) z kodu - jak wrzuciłem to do edytora to wyszły same bzdury... Podobnie jak niektóre slashe...

Druga sugestia:
$HTTP_POST_VARS zamień na $_POST
Moim zdaniem $HTTP_POST_VARS to przeżytek... TU więcej na ten temat.

Spójrz też na linię 7 i 17 - co ma być w końcu: gosp$nr czy gos$nr - ten zapis nie wygląda na dobry winksmiley.jpg

Być może ktoś jeszcze podrzuci pomysł(y)...
Pozdrawiam!
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.