everlostify utworzono 5 sierpnia 2011 utworzono 5 sierpnia 2011 Mam skrypt. Wrzucilem go na serwer i jest pod strona off-on.pl. Jak widac tam gdzie ma byc ,,news,, pisze ze jest blad w 5 linijce. 5 linijka ma taka tresc: while($a = mysql_fetch_array($news_all)){ a caly plik taka: <div class=right_header>News</div> <div class=right_body><?php $news_all = mysql_query("SELECT * FROM news WHERE n_typ=1 ORDER BY n_id DESC"); echo '<table>'; while($a = mysql_fetch_array($news_all)){ $a['n_data'] = date('H:i d-m-Y',$a['n_data']); echo '<tr><td><b>'.$a['n_temat'].' ('.$a['n_data'].')</b></td></tr> <tr><td>'.bb_code($a['n_tresc']).'</td></tr>'; } echo '</table>'; ?> </div> I nie wiem co mam wpisac w 5 linijce. I kolejny problem to to ze niby rejestruje ale sie zalogowac nie mozna. I statystyki nie dzialaja. Slyszalem cos ze trzeba jakis silnik czy cos. Jesli tak to niech ktos napisze jaki i jak to wszystko skonfigrowac. I jesli ktos jest chetny to niech poda nr gg w razie jakbym mial jeszcze jakies problemy z gra
wojtex5 komentarz 5 sierpnia 2011 komentarz 5 sierpnia 2011 pytanie: a dodałeś już jakiekolwiek newsy? Przewiduję, że nie... więc... pozostaje ci dodać 1 np. funkcja nie może przerobić zasobu MySQLa na tablicę, bo zasób jest pusty... (nie da się zrobić z niczego czegoś) [quote]I kolejny problem to to ze niby rejestruje ale sie zalogowac nie mozna.[/quote] ciężko cokolwiek powiedzieć "w ciemno" - podaj skrypty - będzie łatwiej znaleźć błąd.
everlostify komentarz 5 sierpnia 2011 Autor komentarz 5 sierpnia 2011 (edytowane) jak mam ten skrypty podac? Mam wrzucic tu gre? Moze ja podac cala tresc pliku loguj.php i rejestruj.php Rejestruj.php [code]<?php function rejestruj($user,$email,$haslo,$haslo2,$klub,$polecil){ $sprawdzenie = mysql_fetch_array(mysql_query("SELECT COUNT(*) as ile FROM users WHERE u_user='$user' OR u_email='$email'")); if($sprawdzenie['ile']==0){ $spr2 = mysql_fetch_array(mysql_query("SELECT COUNT(*) as ile FROM klub WHERE k_nazwa='$klub'")); if($spr2['ile']==0){ if($haslo==$haslo2){ if(sprawdz_email($email)){ mysql_query("INSERT INTO klub SET k_nazwa='$klub', k_liga=0"); $id = mysql_insert_id(); if($polecil!=0){ mysql_query("INSERT INTO polecil SET p_kto='$id', p_kogo=$polecil, p_data=unix_timestamp()"); mysql_query("UPDATE users SET u_polecil=u_polecil+1 WHERE u_id=$polecil"); } zawodnicy($id); $ip = IP_prawdziwe(); mysql_query("INSERT INTO hala SET h_k_id='$id', h_nazwa='Hala $klub'"); $data = date("d-m-Y"); mysql_query("INSERT INTO users SET u_user='$user', u_email='$email', u_haslo='$haslo', u_klub_id='$id', u_data='$data',u_ip='$ip'"); echo '<div class="plus_msg">poprawnie zarejestrowano gracza</div>'; }else{ echo '<div class="error_msg">Podany email jest nie poprawny. Zmień!</div>'; } }else{ echo '<div class="error_msg">Podane hasła się różnią. Zmień!</div>'; } }else{ echo '<div class="error_msg">Jest już klub o takiej nazwie! Zmień!</div>'; } }else{ echo '<div class="error_msg">Jest już gracz o takim nicku bądź emailu. Zmień!</div>'; } } ?> [/code] Loguj.php [code]<?php function loguj($user,$haslo){ $sprawdzenie = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE u_email='$user' AND u_haslo='$haslo' LIMIT 1")); if($sprawdzenie){ if($sprawdzenie['u_ban']<=time()){ $_SESSION['zalogowany'] = $sprawdzenie['u_id']; $ip = IP_prawdziwe(); mysql_query("UPDATE users SET u_ip='$ip' WHERE u_id=$sprawdzenie[u_id]"); header("Location: game.php?x=konto"); } else{ if(isSET($_POST['button'])){ if(!empty($_POST['tresc'])){ if(strlen($_POST['tresc'])>3){ mysql_query("INSERT INTO wiadomosci SET w_adresat=1,w_nadawca=$$sprawdzenie[u_id],w_temat='Odwołanie za bana',w_tresc='$_POST[tresc]',w_data=unix_timestamp(),w_typ=1"); mysql_query("INSERT INTO wiadomosci SET w_adresat=1,w_nadawca=$$sprawdzenie[u_id],w_temat='Odwołanie za bana',w_tresc='$_POST[tresc]',w_data=unix_timestamp(),w_typ=2"); } else{ echo '<div class="error_msg">Treść powinna zawierać więcej niż 3 znaki</div>'; } } } $sprawdzenie['u_ban'] = date('H:i d-m-Y',$sprawdzenie['u_ban']); echo '<div class="error_msg"> Zostałeś zbanowany w grze, czas wygaśnięcia bana to: '.$sprawdzenie['u_ban'].'<br> Powód:<br> <blockquote id=quote> '.$sprawdzenie['u_ban_opis'].' </blockquote> <br> <form method=post action=index.php?x=logowanie><table> <tr><td>Treść</td><td><textarea name="tresc" rows="5" cols="20" style="background: #EEECEC;"</textarea></td></tr> <tr><td>Akcja</td><td><input type=submit name=button value=napisz></td></tr> </table></form> </div>'; } }else{ echo '<div class="error_msg">Sprawdź dane logowania</div>'; } } ?>[/code]
wojtex5 komentarz 6 sierpnia 2011 komentarz 6 sierpnia 2011 jako-takich błędów rzucających się w oczy nie widzę... jedyne co mi przychodzi na myśl to... nieuruchomienie sesji. Sprawdź czy w pliku w którym wywoływana jest funkcja loguj($user,$haslo) przed tym wywołaniem jest gdzieś start sesji, czyli [code]session_start();[/code]
everlostify komentarz 6 sierpnia 2011 Autor komentarz 6 sierpnia 2011 [code]<?php function loguj($user,$haslo){ $sprawdzenie = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE u_email='$user' AND u_haslo='$haslo' LIMIT 1")); if($sprawdzenie){ if($sprawdzenie['u_ban']<=time()){ $_SESSION['zalogowany'] = $sprawdzenie['u_id']; $ip = IP_prawdziwe(); mysql_query("UPDATE users SET u_ip='$ip' WHERE u_id=$sprawdzenie[u_id]"); header("Location: game.php?x=konto"); } else{ if(isSET($_POST['button'])){ if(!empty($_POST['tresc'])){ if(strlen($_POST['tresc'])>3){ mysql_query("INSERT INTO wiadomosci SET w_adresat=1,w_nadawca=$$sprawdzenie[u_id],w_temat='Odwołanie za bana',w_tresc='$_POST[tresc]',w_data=unix_timestamp(),w_typ=1"); mysql_query("INSERT INTO wiadomosci SET w_adresat=1,w_nadawca=$$sprawdzenie[u_id],w_temat='Odwołanie za bana',w_tresc='$_POST[tresc]',w_data=unix_timestamp(),w_typ=2"); } else{ echo '<div class="error_msg">Treść powinna zawierać więcej niż 3 znaki</div>'; } } } $sprawdzenie['u_ban'] = date('H:i d-m-Y',$sprawdzenie['u_ban']); echo '<div class="error_msg"> Zostałeś zbanowany w grze, czas wygaśnięcia bana to: '.$sprawdzenie['u_ban'].'<br> Powód:<br> <blockquote id=quote> '.$sprawdzenie['u_ban_opis'].' </blockquote> <br> <form method=post action=index.php?x=logowanie><table> <tr><td>Treść</td><td><textarea name="tresc" rows="5" cols="20" style="background: #EEECEC;"</textarea></td></tr> <tr><td>Akcja</td><td><input type=submit name=button value=napisz></td></tr> </table></form> </div>'; } }else{ echo '<div class="error_msg">Sprawdź dane logowania</div>'; } } ?> [/code] To tresc. Zdaje sie ze nie ma. Przelecialem po lebkach. Ale juz mi wszystko dziala. Mozna obejrzec pod strona [url]off-on.pl[/url]
benkowik komentarz 7 sierpnia 2011 komentarz 7 sierpnia 2011 Rozumiem, że dane przekazywane funkcji są zabezpieczone? [code]function rejestruj($user,$email,$haslo,$haslo2,$klub,$polecil)[/code] Dokładniej chodzi mi o SQL Injection
Wciąż szukasz rozwiązania problemu? Napisz teraz na forum!
Możesz zadać pytanie bez konieczności rejestracji - wystarczy, że wypełnisz formularz.