Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z błędem "Warning: Missing argument "
Forum PHP.pl > Forum > PHP
Szymon80
Witam.

Dodawałem nowe pole textarea do skryptu strony i pojawił się dziwny błąd którego nie wiem jak naprawić.


Warning: Missing argument 24 for addok_link_form(),
called in /home/user/public_html/folder/folder2/op.php on line 514
and defined in /home/user/public_html/folder/folder/funkcje.php on line 516


Linia 514 w pliku op.php wygląda tak:

  1. else addok_link_form($_POST[url],$_POST[cat_id],$_POST[sub_id],$_POST[tytul],$_POST[opis],$_POST[slowa],
  2. $_POST[logo],$_POST[miasto],$_POST[ulica],$_POST[numer],$_POST[wlas],$_POST[woj],$_POST[rek],
  3. $_POST[kodpocz],$_POST[tel],$_POST[tel2],$_POST[fax],$_POST[nip],$_POST[regon],$_POST[em],$_POST[gg],$_POST[skype],$err);


a linia 516 w pliku funkcje.php wygląda jak ponizej:

  1. function addok_link_form($name,$cat_id,$sub_id,$title,$desc,$keyw,$rek,$firma,$logo,$miasto,$ulica,$numer,
  2. $wlas,$tel,$tel2,$fax,$em,$gg,$skype,$kodpocz,$woj,$nip,$regon,$err) {


Z błędu rozumiem że w jednym pliku brakuje odwołania do zmiennej z drugiego pliku, ale kilka razy przeglądnąłem te wpisy i nie zauważyłem żadnych braków.
Może mi ktoś poradzić co jest nie tak ?
darko
Cytat
Z błędu rozumiem że w jednym pliku brakuje odwołania do zmiennej z drugiego pliku

To nie błąd, a ostrzeżenie, a ja zrozumiałem, że nie podano 24.go parameteru zdefiniowanej w pliku funkcje.php funkcji addok_link_form() w wywołaniu w pliku op.php . Funkcja z 24 obowiązkowymi parametrami = masakra. Nie lepiej użyć tablicy?
// edit
Domyślam się, że zmieniłeś deklarację funkcji dodając jeden parametr, tymczasem zostawiłeś stare wywołania, w których także powinieneś dodać ten 24. parametr.
Szymon80
Dzięki za odpowiedz i podpowiedź. Usunąłem kilka zmiennych z tej funkcji i o dziwo wszystko działa nadal poprawnie. Błąd też zniknął.
Wiem że to nie jest naprawą skryptu ale jak działa to może być.
( nie mam czasu na kompleksową naukę PHP i dlatego robię prawie wszystko po omacku);

Pozdrawiam.
Ociu
Być może usunąłeś w projektowaniu za dużo argumentów i teraz przy wywołaniu funkcji podajesz ich za dużo. func_get_args.
darko
Cytat
Usunąłem kilka zmiennych z tej funkcji i o dziwo wszystko działa nadal poprawnie.

Wybrałeś najgorszą z możliwych opcji, ale skoro jesteś pewien, że działa i tylko o to chodziło, to ok.
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.