Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Przesyłanie zmiennej poza formularzem
Forum PHP.pl > Forum > PHP
daggerinho
Witam mam pewien malutki problem, przez który cały skrypt do wyświetlania profilu nie działa. Polega on na tym, że nie wiem jak przesłać zmienną z nickiem rejestrującej się osoby do pliku, który tworzy się wraz z rejestracją. Wygląda to mniejwięcej tak

  1. if($_POST["regEnd"]=="true")
  2. {
  3. // tutaj sprawdzenie czy użytkownik wyraził chęć rejestracji
  4.  
  5. $tekst = 'kod html/php zawierajacy szablon wyswietlenia profilu'
  6.  
  7. $wskaznik = fopen($username. '.php', 'w+');
  8. fwrite ($wskaznik, $tekst);
  9. $nick = $username. '.php';
  10.  
  11. ... dalsza część rejestracji(wprowadzanie danych do bazy itd.
  12.  



Krótkie wyjaśnienie o co mi chodzi, jak widać skrypt tworzy plik .php z nazwą tego użytkownika przez co z każdego miejsca strony będzie można wejść do profilu człowieka który np dodał zdjęcie czy film poprzez takie umieszczenie jego nicku
  1. <a href="'.$row[4].'">'.$row[4].'</a>
(Poprzedzone mysql_fetch_array oczywiście). Problem jest taki, że nie iwem jak wysłać do tego pliku, który się stworzy $username czyli nick wybrany do rejestracji przez kogoś. Jak znajdę sposób na wysłanie tego nicku to wtedy wyciągnę sobie z bazy wszystkie informacje poprzez jego ID ale bez tego ani rusz.

Przy okazji, nie wiem czy sposób z tworzeniem każdemu użytkownikowi osobnego pliku jest dobry, ale jestem nie doświadczony, a wszystko wymyślałem sam bez pomocy z zewnątrz. Próbowałem z cURL'em, lecz nie wiem jak to dokładnie wykombinować ponieważ w zmiennej $username nick zapisuje się przecież dopiero po kliknięciu "zarejestruj" (tak jest ustawione w formularzu) a curl pobiera to zanim klikne zarejestruj więc te zmienne są puste...

Proszę o pomoc.

Mephistofeles
Nie, taki pomysł nie jest dobry. Skoro i tak dane pobierasz z bazy, to czemu tworzysz każdemu osobny plik zawierający to samo co u każdego innego użytkownika?
ciekawskiii
nigdy nie uzywalem takiego dziwnego sposobu, a co bedzie jak bedziesz mial 50000 tysiecy userow? zakopiesz sie w tych plikach...
daggerinho
W takim razie mógłby ktoś dać wskazówkę jak to najwydajniej zrobić?
Mephistofeles
Pokaż, co zapisywałbyś w tych plikach z profilami, to ci powiem jak to zrobić lepiej.
kamilkomo
a ja proponuje trzymanie tego wszystkiego w bazie danych (wszystkich info o czlowieku) zrobienie logowania na sesjach, a wtedy wyciagniecie czego kolwiek o gosciu jest wmiare proste, gdyz uzywasz zmiennej sesji
wdev
Daggerinho chodzi chyba o możliwość odczytania danych każdego użytkownika.

Do tego nie trzeba nawet sesji, zrób sobie jeden plik pokaz_uzytkownika.php i przekazuj do niego ID użytkownika GET-em (pokaz_uzytkownika.php?id=1). W pliku najpierw sprawdź, czy ktoś Ci nie chce kuku zrobić z tym linkiem (wystarczy na początku if(!is_numeric($_GET['id'])){exit();}), a później przekaż id do bazy danych i wyciągnij wszystkie dane usera.
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.