Kezdőoldal » Számítástechnika » Weblapkészítés » PHP-MySql. Hogyan kell ellenőr...

PHP-MySql. Hogyan kell ellenőrizni, hogy egy űrlapról elküldött adat már szerepel az adatbázisban?

Figyelt kérdés

Tehát adott pl. egy űrlap és az egyik beviteli mező értékét akarom ellenőrizni, hogy szerepel -e már az a név az adatbázisban és ha szerepel akkor ne írjon be új rekordot, hanem térjen vissza az ürlapra és írja ki, hogy már van ilyen.

Gondolom valami feltételes elágazásban kell ezt megcsinálni if, else, csak arra nem jöttem rá, hogyan kell ellenőrizni, hogy van-e már.


Mert ha ellenőrzi és igaz értékkel tér vissza, hogy van ilyen akkor onnan vissza kell irányítani és kiiratni az üzenetet, ha pedig nem talál olyat akkor lefut az új rekord felvétele.


Nemrég kezdtem ilyet tanulni áés nyugodtan mondjátok, hogy tanuljak előbb és igazatok is lesz.

De ha egyszerüen érthetően le tudnátok vázolni az nagyon jó lenne.


2010. jan. 11. 11:46
 1/5 anonim ***** válasza:

lekérdezed előtte select-el és az alapján.


vagy pedig beállítod a mezőket egyedinek (többet nem egyenként), és akkor nem lesz két ismétlődő adatsor. ezt utána hibakódok alapján le lehet kérdezni, hogy ez volt e a hiba, hogy duplikálni akart e.


hét dióhéjban ennyi, kódot nem fogok beírni, arra nix időm, ezeknek nézz utána.

2010. jan. 11. 12:00
Hasznos számodra ez a válasz?
 2/5 anonim válasza:

<?php

//sql connect

$conn = mysql_connect($server, $user, $pass);

$conn2 = mysql_select_db($conn , $db);

//A server user pass db változókat neked kell bevezetni

$lekeres = mysql_query("select nev from table where name='$regisztalo_neve'");

$eredmeny = mysql_num_rows($lekeres);

if($eredmeny > 0)

{

echo "Sajnos már létezik ilyen nevű felhasználó";

}



kommentálnám a kódot hogy mi mit jelent:

a 3,4 sor az adatbázishoz való kapcsolódás , az 5ös sorban lekérés megy az adatbázishoz ahol a table nevű táblából azt a rublikát keresi meg ahol a nev egyenlő a regisztralo_neve nevű változóval , az eredmeny változó a lekérésnek megfelelő sorok számát jelöli , majd ugye ha 0ánál több sor jött ki akkor már létezik és innentől meg 1értelmű

Remélem segítettem , sok sikert

2010. jan. 11. 17:37
Hasznos számodra ez a válasz?
 3/5 anonim válasza:

bocs , lemaradt a kód végéről:

?>

2010. jan. 11. 17:38
Hasznos számodra ez a válasz?
 4/5 A kérdező kommentje:

Tehát ha jól értelmezem amit írtál akkor miután az űrlapon beírta valaki a "regisztralo_neve" nevü beviteli mezőbe a nevet, akkor az elküldés gombra kattintva meghívja ezt a lekérdezést

amely a "regisztralo_neve" értékét letárolja egy $regisztralo_neve nevű változóban és

A select parancsban eszerint listázzuk ki az embereket a "nev" nevű mezőből , pontosabban a mysql_num_rows($lekeres) -el azt, hogy hány ilyen nevü van amit letárolunk az $eredmeny változóban.

Ha az érték nagyobb mint nulla akkor már minimum 1 van ekkor az "if" ág fut le miszerint kiírja a hibaüzenetet.

Az "else" ágban pedig megírni a felvételi parancsot.


Am ha webszerveren űrlapról adok át adatot egy feldolgozó oldalnak akkor csak úgy fogadja el, hogy :

$_POST[regisztralo_neve]


(legalábbis extra.hu-n)


Mindenesetre köszönöm a fáradozásodat.

2010. jan. 11. 23:32
 5/5 webmester-ter ***** válasza:

a kód helyes, amelyet be gépelt, csak az elején amennyiben formból kapod az adatokat be írod még, hogy:

$regisztralo_neve=$_POST['regisztralo_neve'];

és akkor a folytatás teljesen megegyezik

2012. szept. 11. 08:48
Hasznos számodra ez a válasz?

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

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!