Avatar billede the_zyx Nybegynder
25. oktober 2005 - 13:34 Der er 3 kommentarer og
1 løsning

Melder "Database Query Error"

Hej Eksperter.

For et års tid siden oprettede jeg i forbindelse med en hjemmeside en gæstebog. Den har virket upåklageligt, men pludselig melder den fejl. Måske en opdatering af software hos udbyderen, eller noget andet?

Forbindelsen fejler ingenting til databasen, og selve indlæggene skrives stadig, så der er ingenting galt.

Men når man forsøger at gennemføre et indlæg, altså "Skriv indlæg", så skriver den blot: Database Query Error.

Jeg forestiller mig at der er er noget der skal rettes her:


------------------------------------------------------------- $in = strip_array($in);
    $in['message'] = encode_msg($in['message']);    // Add SQL compatibilty & Smilie Convert
    $in['http']    = str_replace("http://", "", $in['http']);  // Remove http:// from URLs
    if ($in['name'] == "") { died("<html><head><title>$guestbook_head</title>$languagemetatag</head><body><center>$name_empty</center></body></html>"); }
    if ($in['icq'] != "" && ($in['icq'] < 1000 || $in['icq'] > 999999999)) { died("<html><head><title>$guestbook_head</title>$languagemetatag</head><body><center>$icq_wrong</center></body></html>"); }
    if (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,3}$",$in['email']) && $in['email'] != "") { died("<html><head><title>$guestbook_head</title>$languagemetatag</head><body><center>$non_valid_email</center></body></html>"); }
    if (strlen($in['message']) < $limit["0"] || strlen($in['message']) > $limit["1"]) { died("<html><head><title>$guestbook_head</title>$languagemetatag</head><body><center>$message_incorrect $limit[0] $and $limit[1] $characters.</center></body></html>"); }
    if ($in['email'] == "") { $in['email'] = "none"; }
    if ($in['icq'] == "") { $in['icq'] = 0; }
    if ($in['http'] == "") { $in['http'] = "none"; }
    if ($in['location'] == "0") { $in['location'] = "none"; }
    $in['browser'] = $HTTP_USER_AGENT;
    mysql_db_query($database, "INSERT INTO guestbook (name, email, http, icq, message, timestamp, ip, location, browser)
    VALUES('$in[name]', '$in[email]','$in[http]','$in[icq]','$in[message]','$add_date', '$REMOTE_ADDR','$in[location]','$in[browser]')")
    or died("Database Query Error");
-------------------------------------------------------------

Med venlig hilsen
Avatar billede pidgeot Nybegynder
25. oktober 2005 - 17:40 #1
Det ville hjælpe dig om du i stedet for din nuværende die sætter

die(mysql_error())

ind. På den måde kan du nemmere finde ud af hvor fejlen ligger, da du får vist SQL-serverens fejlmeddelelse.
Avatar billede fjammi Nybegynder
27. oktober 2005 - 00:58 #2
har du et felt i databasen som har typen int og har auto_increment, så kan det være at brugt alle de auto_id numre der er mulighed for med det tal du har defineret int til.
fx. hvis int er 2 kan der være 99 auto_id, 3 = 999 osv
Avatar billede the_zyx Nybegynder
27. oktober 2005 - 14:18 #3
Hej fjammi. Det er ikke aktuelt. Er godt klar over "auto_increment" funktionen.
Avatar billede the_zyx Nybegynder
17. november 2005 - 09:44 #4
..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester