Jag kan göra ett försök på en förklaring. Håll till godo.
mysql_query("insert into gb1 values ('', 'test', 'testbbb', 'testccc', 'testddd')");
Ovanstående kodsnutt sätter in angivna värden i tabellen gb1. Det som är lite klurigt är att fälten i tabellen inte är angivna, vilket kan göra det lite svårt att förstå. Ponera att tabellens fält är id, förnamn, efternamn och ålder. Då skulle det kunna se ut såhär.
mysql_query("insert into gb1 ('id', 'fornamn', 'efternamn', 'alder') values ('', 'Linus', 'Bäckman', '19')");
Om man har auto_increment på ett fält, som på fältet id i mitt exempel, så behöver man inte ens ha med det fältet vid en insert:
mysql_query("insert into gb1 ('fornamn', 'efternamn', 'alder') values ('Linus', 'Bäckman', '19')");
När man ska ta ut samma information ur databasen kan det se ut på följande sätt. Här nyttjar vi din andra SQL-fråga.
$result = mysql_query('SELECT * FROM gb1 LIMIT 0, 30');
while ($array = mysql_fetch_assoc($result)) {
echo $array["id"] ." ". $array["fornamn"] ." ". $array["efternamn"] ." ". $array["alder"] ."<br/>";
}
Om man istället vill specificera vilka fält man vill ta ut så tar man bort stjärntecknet (*). Detta kan vara bra om man vet att man inte behöver visa alla fält då det sparar lite belastning på databasen.
$result = mysql_query('SELECT id, fornamn, efternamn, alder FROM gb1 LIMIT 0, 30');
while ($array = mysql_fetch_assoc($result)) {
echo $array["id"] ." ". $array["fornamn"] ." ". $array["efternamn"] ." ". $array["alder"] ."<br/>";
}
LIMIT 0, 30 i frågan står för att man ska börja på första posten i databasen och visa 30 poster framåt. Denna funktion är väldigt bra att ha om man vill kunna bläddra bland informationen på flera sidor.