Regisztrációnál nem szeretném ha egy felhasználónévvel nem tudnának többen regisztrálni, ezért szeretném szűrni. Mi lehet a hiba?
Hibaüzenetet is kapok vissza, ami a következő:
Fatal error: Call to a member function query() on a non-object in /home/a4755475/public_html/reg.php on line 239
Mi lehet a hiba oka?
$sql = @ new mysqli ("localhost", "root", "root", "user") ; if ($sql->connect_errno) { echo "<div class="message error">Adatbázis hiba: ", $sql->connect_errno. " ". $sql->connect_error; exit () ; } $username = strip_tags ($username) ; $username = addcslashes ($username, "%'=`") ; $query = "SELECT `user_username` FROM `user` WHERE `user_username` = '". $username. "'"; $result = $sql->query ($query) or die ("Hiba! ") ; if ($result->num_rows>0) { echo "<div class="message error">A felhasználónév foglalt! </div>"; $error_data = true; } $sql->close () ;
"Nem szeretnéd, hogy egy felhasználónévvel ne tudjanak többen regisztrálni"
Tehát lehessen több embernek ugyanaz a felhasználóneve.
A kérdést talán jól kéne megfogalmazni...
Igen, kritizálok, de rászántam magam, hogy elemezzem a kódod :)
Ha a 3.sorban, a "$query=SELECT..." nullpointert ad vissza (vagyis nincs ilyen felhasználónév az adatbázisban) akkor a query függvényt sem tudod meghívni és betenni a $result-ba. Szóval inkább meg kéne vizsgálni, hogy a "SELECT `user_username`..." null-e, és ha igen, akkor nincs ilyen felhasználónév.
Ja és a "<div class="message error">Adatbázis hiba: ", itt nincs lezáró </div> tag.
Remélem jól gondoltam, bár már régen (>1 éve) foglalkoztam intenzíven php+mysql cuccokkal.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!