Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z foreach()
Skwara
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 2.05.2005
Skąd: Tychy

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


Mam taki kodzik. Odpowiedzialny jest za sprawdzanie czy są jakieś niepotrzebnie wpisane rzeczy (co ma kasować ustawia się w panelu admina). Jest to kawałek kodu dodatku do phpBB.

Jest to kawałek pliku unicomm.php:
  1. <?php
  2. function unicomm_get($data)
  3. {
  4. global $unicomm_gdata,$error_msg,$error,$lang;
  5. //var_dump($data);
  6. foreach ($data as $k => $md)
  7. {
  8. $ug=$unicomm_gdata[$k];
  9.  
  10. if ($ug['uc_find'])
  11. {
  12. $find=explode("\n",$ug['uc_find']);
  13. $replace=explode("\n",$ug['uc_replace']);
  14. foreach ($find as $k2=>$f)
  15. {
  16. $r='';
  17. $r=$replace[$r];
  18. $f=trim($f);
  19. $r=trim($r);
  20. if ($f)
  21. {
  22. $data[$k]=preg_replace($f,$r,$md);
  23. }
  24. }
  25. }
  26. //echo '<tt>sprawdzam '.$data[$k].' przez '.$ug['uc_pattern'].' wynik '.preg_match('#^'.trim($ug['uc_pattern']).'$#i',$data[$k]).'</tt><br/>';
  27. if ($data[$k]&&$ug['uc_pattern'] && !preg_match('#^'.trim($ug['uc_pattern']).'$#i',$data[$k]))
  28. {
  29. $error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . sprintf($lang['UniCommProfileError'],$ug['uc_name']);
  30. $error = true;
  31. }
  32. }
  33. $mydata=base64_encode(serialize($data));
  34. //die();
  35. return $mydata;
  36. }
  37.  
  38. ?>


Niestety podczas rejestracji wyskakuje błąd.
Kod
Warning: Invalid argument supplied for foreach() in /home/konto/aaa/public_html/forum/includes/unicomm.php on line 138

Warning: Cannot modify header information - headers already sent by (output started at /home/konto/aaa/public_html/forum/includes/unicomm.php:138) in /home/konto/aaa/public_html/forum/includes/page_header.php on line 332

Warning: Cannot modify header information - headers already sent by (output started at /home/konto/aaa/public_html/forum/includes/unicomm.php:138) in /home/konto/aaa/public_html/forum/includes/page_header.php on line 334

Warning: Cannot modify header information - headers already sent by (output started at /home/konto/aaa/public_html/forum/includes/unicomm.php:138) in /home/konto/aaa/public_html/forum/includes/page_header.php on line 335


Ale błąd odziwo wyskakuje tylko przy rejestracji. Przy edytowaniu profilu już nie. Zaznaczam, że funkcja działa (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Dodam jeszcze, że danymi wejściowymi dla funkcji unicomm_get() to unicomm_get($_POST['unicomm'])
W czym jest problem? bo ja już nie wiem (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

P.S. Wiem, że powinienem kierować się z takim pytaniem na polski support. Owszem kierowałem te pytanie, ale nikt mi nie pomógł. I zaznaczam jeszcze, że nie jestem autorem tego moda. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
W czym jest problem? bo ja już nie wiem (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.12.2025 - 00:13