![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 12.01.2006 Ostrzeżenie: (0%) ![]() ![]() |
Stworzyłem sobie funkcję działającą z 4 zmiennymi np. abc (x, y, z, n). Funkcja ma coś tam robić np. wstawiać określony kod html po podaniu określonych zmiennych.
W treści dokumentu np. test.php wstawiam sobie w różnych miejscach sekwencję: <?php abc (1, 2, 3, 4) ?> ... i wszystko jest OK do chwili gdy tych wystąpień (tego odwołania do funkcji) nie jest zbyt dużo. Po przekroczeniu pewnej wartości strona się nie wyświetla, a jak przerwę wczytywanie strony, to wyświetla się jej niepełna zawartość. Co jest nie tak? Czy to wina konfiguracji php, Apacha czy konstrukcji kodu/odwołań do funkcji itp. Dzięki. Maciek |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Twoja funkcja chyba przeciąża serwer.
Jest to na 99% sytuacja kiedy serwer jest w pożądku ale to Ty (Twój kod zawala sprawę). Pokaż może kod tej funcji. I napisz ile razy ją wywołujesz (choć to raczej nie ma znaczenia) |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 12.01.2006 Ostrzeżenie: (0%) ![]() ![]() |
test.php
wywołanie funkcji zaczyna robić problem jak jest wstawione ponad np. 40 razy funkcja.txt (includowana do test.php)
![]() poprawiam --- nospor Tych If w funkcji jest kilka, ale casłość nie ma więcej niż 20 linii. Ten post edytował nospor 12.01.2006, 09:26:35 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 36 Pomógł: 0 Dołączył: 16.12.2005 Skąd: Warszawa, Kabaty Ostrzeżenie: (0%) ![]() ![]() |
A czy ciągle wywoływana jest z tymi samymi argumentami, tak jak w przykładzie? Bo jeśli tak, to:
A w kodzie:
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 12.01.2006 Ostrzeżenie: (0%) ![]() ![]() |
No nie... tak tylko napisałem z rozpędu. Wywoływane jest za każdym razem z innymi.
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 740 Pomógł: 15 Dołączył: 23.08.2004 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
No i pewnie tresc funkcji tez jest inna bo wywolanie tej konkretnej - podanej przez Ciebie z pewnoscia nie stwarza problemow.
Ten post edytował bigZbig 12.01.2006, 13:50:30 -------------------- bigZbig (Zbigniew Heintze) | blog.heintze.pl
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 12.01.2006 Ostrzeżenie: (0%) ![]() ![]() |
OK, jeśli tak, to pakuję właściwy kod... mam nadzieję, że to coś zmieni
Główna część:
Plik z funkcją:
Czy teraz to coś wyjaśnia? |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 740 Pomógł: 15 Dołączył: 23.08.2004 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Wywolujesz galeria (10, 2, H); gdy tymczasem definicja twojej funcji przewiduje 4 argumenty. Wywoluj z czterema np galeria(10, 2, "H", ""); albo nadaj ostatniemu argumentowi wartosc domyslna np.
Jak pewnie zauwazyles wartosc typu string objalem cudzyslowami. -------------------- bigZbig (Zbigniew Heintze) | blog.heintze.pl
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 12.01.2006 Ostrzeżenie: (0%) ![]() ![]() |
Bardzo dziękuję. Ćwiczyłem to wczoraj w nocy i już nie wiedziałem na co patrzę. Wydawało mi się, że jeśli nie podaję argumentu, to jest to jednoznaczne z wartością pustą jak "".
Zmyliło mnie też to, że do pewnego czasu działa, a po wstawieniu kolejnego odwołania, przestaje. Trochę mnie to dziwi. Jakie jest na to wytłumaczenie? Jeszcze raz dziękuję ![]() Jak się okazało to jeszcze nie do końca pomogło... dopiero jak H i V wziąłem w "" to poszło. Czyżby bez "" traktował to inaczej? Ten post edytował mac310 12.01.2006, 15:35:46 |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 476 Pomógł: 1 Dołączył: 5.11.2005 Skąd: Bieruń city Ostrzeżenie: (0%) ![]() ![]() |
bez czudzyslowiow traktuje to jak stala. jezeli stala nie istnieje to zwraca string z nazwa stalej:
echo LOL; // zwroci "LOL" -------------------- |
|
|
![]()
Post
#11
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(dtb @ 2006-01-12 15:49:34) bez czudzyslowiow traktuje to jak stala. jezeli stala nie istnieje to zwraca string z nazwa stalej: echo LOL; // zwroci "LOL" Nieprawda. Kod:
Zwróci: Cytat Notice: Use of undefined constant LOL - assumed 'LOL' in C:\usr\www\index.php on line 3 LOL A dlaczego? Bo php natrafiając na stałą, której nie ma generuje komunikat o tym że stała taka nie istnieje (można go stłumić odpowiednią konfiguracją dyrektywy error_reporting oraz display_errors), potem domyślnie tworzy ją wstawiając jej wartość taką samą jak jej identyfikator. To dlatego echo jednak wyświetla stałą. Ale robienie czegoś takiego to błąd. Tak samo jak stwierdzenie "jezeli stala nie istnieje to zwraca string z nazwa stalej" jest błędne. P.S.Uogólnienia to śmierć dla sztuki. Boskie natchnienie tkwi w szczegółach. ![]() |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 740 Pomógł: 15 Dołączył: 23.08.2004 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
@mike_mech - jestes poeta - przepraszam za te nic niewnoszaca do tematu dygresje
![]() --edit--- Zapomniałem podpisać. Autorem tego powiedzenia jest Arthur Miller. Zabij mnie, ale nie wiem kim był. Po prostu zasłyszałem. ~mike_mech -------------------- bigZbig (Zbigniew Heintze) | blog.heintze.pl
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 21:46 |