Hur man undviker dubbletter Med PHP i MySQL

April 15

Hur man undviker dubbletter Med PHP i MySQL


Många PHP applikationer kommer att tillåta användare att mata in data som sedan sätts in i en MySQL-databas. Det är viktigt för dessa applikationer att kontrollera om en post redan finns i MySQL-databas innan den läggs. En reaktiv sätt att göra detta är att ange ett unikt index på nyckelfältet i MySQL-databas, lägga till posten och kontrollera om ett fel uppstod. Dock är mer graciös, proaktiv strategi för att kontrollera om ett duplikat posten innan lägga till data till databasen.

Instruktioner

1 Starta en redaktör och skapa en ny PHP-skript fil. Till exempel:

nano adddata.php

2 Skapa den HMTL formuläret för att acceptera användarinmatning. Ställ in metod för att "post" och åtgärder för att "update.php" för att skriva de inlämnade resultaten en "update.php" fil som du kommer att skapa nästa. Till exempel:

<! DOCTYPE html PUBLIC "- // W3C // DTD XHTML 1.0 Transitional // EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<Html xmlns = "http://www.w3.org/1999/xhtml">

<Head>

<Meta http-equiv = "Content-Type" content = "text / html; charset = utf-8" />

<Title> Data Entry / title>

</ Head>

<Body>

<Form method = "post" action = "update.php">

<Input type = "hidden" name = "färdig" value = "1" />

<P> kundnummer: <input type = "text" name = "custnum" size = "10" /> </ p>

<P> Kundens namn: <input type = "text" name = "custname" size = "30" /> </ p>

<P> <input type = "submit" name = "submit" value = "submit" /> </ p>

</ Form>

</ Body>

</ Html>

3 Avsluta editorn och spara filen. Lansera editorn igen och skapa den "update.php" fil. Till exempel:

nano update.php

4 Kontrollera dolda formulärfält för att säkerställa att "update.php" filen anropas från "post" operation. Till exempel:

<? Php

$ Avslutade = $ _POST [ 'färdig'];

if (! färdig $ = "1") die ( "<p> Form inte slutförts </ p>");

5 Extrahera kundnummer och kundnamn från den utsända resultat. Kontrollera att varje värde innehåller data. Till exempel:

$ Number = (isset ($ _ POST [ 'custno']) $ _POST [ 'custno']: "";

? $ Name = (isset ($ _ POST [ 'custname'] $ _POST [ 'custname']: "";

if ($ nummer == "" || $ name == "") die ( "<p> Form inte rätt ifyllda </ p>");

6 Anslut till MySQL-servern och välj den önskade databasen. Till exempel:

$ DBc = mysql_connect ( "localhost", "användarnamn", "lösenord") or die ( "<p> Det gick inte att ansluta till servern Fel är!" Mysql_error ().);

$ Db = mysql_select_db ( "kunder");

7 Skapa och köra en fråga på databasen som söker efter kundnummer du ska lägga till. Se till att du ordentligt fly användarens input strängar med "mysql_real_escape_string." Kontrollera returvärdet och avsluta om kundnummer redan existerar. Till exempel:

$ Query = "SELECT custno FROM kunder WHERE anpassade =" "mysql_real_escape_string ($ nummer).." ";

$ Result = mysql_query ($ query);

if ($ result && mysql_num_rows ($ result)> 0) die ( "<p> Kunden redan </ p>");

8 Skapa och genomföra en fråga för att infoga den nya kunden i databasen. Se till att du ordentligt fly användarens input strängar med "mysql_real_escape_string." Till exempel:

$ Query = "INSERT INTO kunder (custno, custname) värden (" "mysql_real_escape_string ($ nummer).." "," "Mysql_real_escape_string ($ name)..");

$ Result = mysql_query ($ query);

if (! $ result) die ( "<p> Fel infoga kundregister </ p>");

echo "<p> Kunden lagts </ p>";

?>


        

Välkommen till dig för att skicka en kommentar:

            
            
            
            

© 2020 Astrixsoft.com | Contact us: webmaster# astrixsoft.com