![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 19.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Mam problem, gdyż stworzyłem skrypt rejestracji, gdzie użytkownik odrazu może dodać swój avatar i jest on zapisywany w bazie danych. Następnie zrobiłem coś jak panel użyrkownika gdzie wyświetlają się wszystkie informacje o nim, może zmienić hasło, usunąć konto. Mam tylko problem z wyświetleniem na tej stronie obrazka z bazy, gdyż na początku muszę umieścić header("Content-type: image/jpg;"); aby obrazek się pojawił zamiast krzaczków. Jednak gdy umieszczę ten nagłowek to wyświetla się tlyko obrazek natomast bez tego nagłówka wyświetla się wszystko z tym, że zamiast obrazka są krzaczki. Jak rozwiązać ten problem. Proszę o pomoc. Załączam kody źródłowe:
user.php CODE <? include('conn.php'); session_start(); $userlogin = $_SESSION['login']; if (isset($_SESSION['user_id']) and isset($_SESSION['login'])) { $query = "select * from user where login='$userlogin'"; $result = mysql_query($query); $num_results = mysql_num_rows($result); for ($i=0; $i <$num_results; $i++) { $row = mysql_fetch_array($result); ?> <html> <head> <meta http-equiv="Content-type" content="text/html; charset=iso-8859-2"> <link rel="Stylesheet" href="logowanie.css"> </head> <body> <table class="login1"> <tr> <td class="login2"> <p class="login_naglowek"> <?php print stripslashes($row["login"]); ?> </p> </td> <td class="login2"> <?php include('avatar.php'); ?> </td> </tr> <tr> <td class="login3"> <p class="login_lewybok"> <?php print "Hasło: "; ?> </p> </td> <td class="login4"> <p class="login_prawybok"> <a href="?url=haslo">Zmień hasło</a> </p> <?php if($_GET['url']=='haslo') { ?> <form action="haslo.php" method="post"> WprowadĽ nowe hasło: <input type="password" name="password" value=""><br> Powtórz hasło: <input type="password" name="password2" value=""><br> <input type="submit" value="Zmień hasło"> </form> <?php } ?> </td> </tr> <tr> <td class="login3"> <p class="login_lewybok"> <?php print "E-Mail: "; ?> </p> </td> <td class="login4"> <p class="login_prawybok"> <?php print stripslashes($row["email"]); ?> </p> </td> </tr> <tr> <td class="login3"> <p class="login_lewybok"> <?php print "Miejscowo¶ć: "; ?> </p> </td> <td class="login4"> <p class="login_prawybok"> <?php print stripslashes($row["miejscowosc"]); ?> </p> </td> </tr> <tr> <td class="login3"> <p class="login_lewybok"> <?php print "Newstler: "; ?> </p> </td> <td class="login4"> <p class="login_prawybok"> <?php print stripslashes($row["newstler"]); ?> </p> </td> </tr> <tr> <td class="login3"> <p class="login_lewybok"> <?php print "Data rejestracji: "; ?> </p> </td> <td class="login4"> <p class="login_prawybok"> <?php print stripslashes($row["data"]); ?> </p> </td> </tr> <tr> <td class="login2" colspan="2"> <? if($_GET['url']=='') { if($_GET['usun']=='') { ?> <a href="?url=usun">Usuń konto!</a> <?php } } if($_GET['url']=='usun') { print "Czy na pewno chcesz usun±ć konto?"; print ('<br>'); ?> <a href="?usun=tak">TAK</a><br> <a href="?usun=nie">NIE</a> <?php } if($_GET['usun']=='tak') { session_unset(); session_destroy(); $usun = "delete from user where login='$userlogin'"; $wynik = mysql_query($usun); print "Użytkownik zostal usunięty!"; ?> <meta http-equiv="refresh" content="2; url=index.php"> <?php } if($_GET['usun']=='nie') { print "Użytkownik nie zostal usunięty!"; ?> <meta http-equiv="refresh" content="2; url=user.php"> <?php } ?> </td> </tr> </table> </body> </html> <?php } } else { print "Nie jeste¶ zalogowany. Zaloguj się!"; } ?> avatar.php CODE <?php header("Content-type: image/jpg;"); include('conn.php'); $userlogin = $_SESSION['login']; $result = mysql_query("SELECT avatar FROM user WHERE login='kowal199306'"); if (mysql_num_rows($result) != 0) { $row = mysql_fetch_assoc($result); echo base64_decode($row['avatar']); } ?> I co zrobić z nagłówkiem header, gdzie go umieścić, żeby wszystko było dobrze? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 744 Pomógł: 118 Dołączył: 14.02.2009 Skąd: poziome Ostrzeżenie: (0%) ![]() ![]() |
w pliku user czy innym ktory ma wyswietlic obrazek, powinnienes dac tak:
<img src="avatar.php?user=..."> w avatar.php dajesz header. |
|
|
![]()
Post
#3
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
A czemu trzymasz obrazki w bazie? Niepotrzebnie męczysz serwer, uniemożliwiasz cache'owanie...
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 19.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
wielkie dzięki za pomoc. w avatar.php zastosowałem header i obrazek wstawiłem linijką <img scr="avatar.php"> do pliku user.php. Nie trzeba w odnośniku podawać jaki user bo w pliku avatar.php obrazek jest wyświetlany na podstawie zmiennej sesyjnej (IMG:http://forum.php.pl/style_emoticons/default/party.gif)
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 744 Pomógł: 118 Dołączył: 14.02.2009 Skąd: poziome Ostrzeżenie: (0%) ![]() ![]() |
Ale wez pod uwage tez to co napisal kolega Erix, aby nie trzymac obrazkow w bazie;) a jedynie ich nazwe/id
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 20:50 |