156 PHP i MySQL dla każdego
wyświetlić inną informację dla użytkownika1. Jeśli jednak plik udało się otworzyć, w pętli while wczytywane są jego kolejne linie. Jest to procedura analogiczna do zastosowanej w skrypcie z listingu 5.16. Każda linia rozbijana jest na cztery części względem znaków średnika. Jeśli zostanie stwierdzone, że odczytany z danej linii identyfikator jest taki sam, jak identyfikator przekazany funkcji send w postaci argumentu id, zmiennym path i name przypisywane są: ścieżka dostępu do pliku oraz nazwa pliku. Dodatkowo zmiennej pomocniczej found przypisywana jest wartość true i pętla jest przerywana. Jeśli zatem identyfikator zostanie odnaleziony, zmienna found będzie miała wartość true, a zmienne path i name będą zawierały niezbędne dane. Jeśli natomiast identyfikator nie zostanie odnaleziony, zmienna found będzie miała wartość false, a zmienne path i name będą nieustawione.
Po zakończeniu pętli whi 1 e, za pomocą instrukcji i f są sprawdzane dwa warunki: czy zmienna found ma wartość różną od false oraz czy istnieje plik wskazywany przez zmienne path i name. Jeśli found ma wartość fal se lub plik nie istnieje, jest wykonywane przekierowanie do znanego nam już pliku 404.html i funkcja kończy działanie przez wywołanie instrukcji return. Jeśli jednak zmienna found ma wartość true, a plik wskazywany przez path i name istnieje, jest on wysyłany do przeglądarki użytkownika za pomocą techniki analogicznej do użytej w poprzednich przykładach.
Taka informacja nie powinna jednak zdradzać szczegółów działania skryptu.