05. september 2005 - 20:01
Der er
17 kommentarer
ID kommer ikke
Når jeg opretter en news på min side, er ID'et ved dem alle sammen 0, hvorfor Jeg bruger de har 2 koder til det: <form name=submit action=opret-nyhed.php method=post> <table border=0 width=98% cellpadding=0 cellspacing=0> <tr> <td colspan=2><br><br></td> </tr> <tr> <td align=center>Navn:</td> <td align=center><input type=text name=overskrift size=30 maxlength=10></td> </tr> <tr> <td align=center>Overskrift:</td> <td align=center><input type=text name=overskrift size=80 maxlength=20></td> </tr> <tr> <td align=center>Nyhed:</td> <td align=center><textarea name=besked rows=6 cols=80></textarea></td> </tr> <tr> <td align=center colspan=2><br><input type=submit name=opret value='Opret nyhed'></td> </tr> </table> </form> </form> og en ny side: <? $dato = date("d-m-y"); $tid = date("H:i"); $ip = $_SERVER['REMOTE_ADDR']; mysql_connect ("localhost", "hemmeligt", "hemmeligt"); mysql_select_db ("hemmeligt"); mysql_query("INSERT INTO news VALUES('','$_POST[navn]','$_POST[overskrift]','$_POST[besked]','$dato','$tid','$ip')"); header("Location: ../news.php"); ?>
Annonceindlæg tema
05. september 2005 - 20:03
#1
fordi du bruger '' i din insert, og feltet er vel autoincrement primary? Prøv at fjerne de to første '' efter "VALUES"
05. september 2005 - 20:10
#2
det virker ikke :/ så opretter den dem slet ikke .
05. september 2005 - 20:12
#3
Hvordan er dit ID-felt defineret i databasen? Det skal være af typen autoincrement.
05. september 2005 - 20:14
#4
ID bigint(20) ved ik om det er det du mener ?
05. september 2005 - 20:15
#5
meget kan løses ved at bruge or die (mysql_error()); efter din query mysql_query("INSERT INTO news VALUES('','$_POST[navn]','$_POST[overskrift]','$_POST[besked]','$dato','$tid','$ip')")or die (mysql_error()); Du har to name=overskrift i din formular. Og du skal selvf. lige ha' feltnavne i mysql med?
05. september 2005 - 20:18
#6
Altså de navne på kolonnen hvor de forskellige $_POST skal gemmes.
INSERT INTO `tabel` (`navn`, `email`) VALUES ('". $_POST["navn"] ."', '". $_POST["email"] ."')
og så lige lidt sikkerhed er jo så nok ikke af vejen heller.
http://www.eksperten.dk/artikler/190
05. september 2005 - 20:22
#7
cjuul> Dit ID-felt skal også sættes til at være autoincrement.
05. september 2005 - 20:23
#8
jamen det underlige er at jeg har en side med præsis de samme sider bare fra en anden database, og det andet virker :s
05. september 2005 - 20:24
#9
nielle> mmh, inde i mysql? Kan nemlig ik finde det :D
05. september 2005 - 20:27
#10
Ja, inde i MySQL. Bruger du phpmyadmin for at arbejde med din database?
05. september 2005 - 20:28
#11
ja gør jeg
05. september 2005 - 20:31
#12
I den linje, hvor du definere dit ID til at være bigint(20), er der nogle flere dropdownmenuer. En af dem hedder Extra og under denne skulle du kunne finde "autoincrement".
05. september 2005 - 20:43
#13
det kan den ikke ;s der står bare fejl ..
05. september 2005 - 20:50
#14
Der burde nu ikke stå "fejl" i feltet. Men det kan måske være at bigint(20) er alt for stort et talfelt til at have autoincrement - prøv med en noget mindre taltype.
05. september 2005 - 21:14
#15
MySQL returnerede: #1075 - Incorrect table definition; There can only be one auto column and it must be defined as a key
05. september 2005 - 21:25
#16
Dit ID-felt bør se ud som den øverste linje i dette billede:
http://www.linuxsoft.cz/screenshot_img/197-a.jpg Det lader til at du enten allerede har et felt som er autoincrement, eller at du ikke har markeret ID-feltet som Primary Key. Det sidste opnår du ved at klikke på linket Primary i enden af ID-rækken.
13. september 2005 - 21:00
#17
Har du fået kigget på det?
Vi tilbyder markedets bedste kurser inden for webudvikling