Avatar billede challenge Praktikant
10. juni 2009 - 11:26 Der er 5 kommentarer og
1 løsning

AJAX vis fejl hvis serverside viser fejl

Hej eksterper,

Jeg bakser i øjeblikket med en form validation i Ajax. Når brugeren trykker på afsend bliver denne request selvfølgelig behandlet af AJAX i baggrunden ved at sende POST oplysninger til en .php-side der behandler oplysningerne. Hvad jeg ønsker er, at hvis PHP succesfuldt fremsender (eller adder til databasen) data, skal ajax ligeledes vise en succesfuld-besked - hvis en fejl opstod, eksempelvis fejl i indtastning (så som brugernavn allerede taget), skal ajax i stedet vise fejl.

Jeg har nu brugt godt 12 timer på at finde en løsning på google både med den ønskede effekt og med substituerende effekter, men uden held. Hvis nogen skulle ligge inde med nogle gode links til en lignende effekt, vil jeg være yderst taknemmelig.
Avatar billede andreas13_fam Nybegynder
10. juni 2009 - 14:18 #1
Jeg har selv siddet og prøvet at lave noget, pt er det dog kun i beta.
Men det er rimelig enkelt.

Jeg har denne JavaScript kode som høre til alt AJAX
http://pastebin.com/f5fffc832
Så har jeg selve JavaScript funktionen som bliver kørt når man trykker på send
http://pastebin.com/f4ac30e0c
Det bliver så sendt til en PHP fil der sender XML tilbage (bliver nok JSON)
http://pastebin.com/f37b549be

Resultatet kan mere eller mindre ses her (i beta):
http://www.netkogeren.a-mweb.dk/index.php?profil=opret
Avatar billede majbom Novice
10. juni 2009 - 15:51 #2
du kan jo få din php-fil til at udskrive en besked der indeholder noget du kan bruge til at vurdere udfra hvad php-scriptet rent faktisk fik gjort/ikke gjort og derefter, vha XMLHttpRequest.responseText (som er det din php-fil udskriver), udskrive beskeden.
Avatar billede challenge Praktikant
10. juni 2009 - 23:32 #3
Andreas13_fam,

Fantastisk script at gennemgå - jeg trak en masse guld-korn ud derfra og fik sammensat det til noget der fungerede.

Hvad jeg gjorde var blot at få php til at oprette noget xml-kode hvorefter jeg trak oplysninger ud derfra.

Smid gerne svar, Andreas!

Splazz,
Mange tak for tilbagemeldingen - jeg fik "desværre" løst problemet før dit forslag dukkede op på min skærm.

Tak for hjælpen, begge!
Avatar billede majbom Novice
11. juni 2009 - 06:54 #4
bare iorden, det var sådan set bare en forklaring af andreas' script :)
Avatar billede andreas13_fam Nybegynder
11. juni 2009 - 11:18 #5
Godt at du kunne bruge det, splazz's forklaring gælder enlig i alt ajax spørgsmålet er bare om man vil have JS og PHP til at tale sammen i XML eller JSON.

Til arktivet er her nogle link...
XML:
www.w3schools.com/xml/default.asp
www.php.net/xml
JSON:
http://json.org/
us.php.net/manual/en/book.json.php
AJAX:
http://dengodekode.dk/artikler/ajax/xmlhttprequest_wrapper.php
Avatar billede andreas13_fam Nybegynder
11. juni 2009 - 11:19 #6
Ja der skulle være et punktum
Godt at du kunne bruge det.
Splazz's forklaring gælder enlig i alt ajax, spørgsmålet er bare om man vil have JS og PHP til at tale sammen i XML eller JSON.
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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