Avatar billede andreas13_fam Nybegynder
03. marts 2009 - 20:12 Der er 20 kommentarer og
2 løsninger

nu bliver jeg tosset

Mit problem:
Mit problem er at fejlen kun opstår i IE når man skriver URL eller går ind på siden. Ligeså snart at man genindlæser (F5) siden virker det perfekt.

Guide til at blive tosset:
- Gå ind på denne side via IE (Jeg har testet med IE7):
http://www.kogebogen.a-mweb.dk/NyHTML/index.php?profil=opret
- Skriv noget i feltet "brugernavn", fjern fokus (fx tab).
- Lig mærke til at der kommer en fejl (ligesom på ekspterten.dk)
- Genindlæs side, ikke ved at skrive URL igen, men ved at trykke på F5 knappen.
- Skriv noget i feltet "brugernavn", fjern fokus (fx tab).
- Lig mærke til at det nu virker.

Links til at blive klogere (måske):
http://www.kogebogen.a-mweb.dk/NyHTML/AJAX/XMLHttpRequest.js
http://www.kogebogen.a-mweb.dk/NyHTML/AJAX/Opet-Bruger/JavaScript.js
http://www.kogebogen.a-mweb.dk/NyHTML/AJAX/Opet-Bruger/

Og en af php fillerne
<?php
if ($_POST['ajaxbrugernavn'] == "Brugernavn")
{
echo '<span style="color:#FF9911;">- Mangler input</span>';
}
elseif ($_POST['ajaxbrugernavn'] == "")
{
echo '<span style="color:#FF9911;">- Mangler input</span>';
}
elseif (preg_match("/\s+/", $_POST['ajaxbrugernavn']))
{
echo '<span style="color:#FF0000;"> - Du må ikke bruge mellemrum! </span>';   
}
elseif (preg_match("/-+/", $_POST['ajaxbrugernavn']))
{
echo '<span style="color:#FF0000;"> - Du må ikke bruge bindestreg! </span>';
}
elseif (preg_match("/\w+/", $_POST['ajaxbrugernavn']))
{
    $anti_sql_infiktion_input = $_POST['ajaxbrugernavn'];
    include "/home/amwebdk/public_html/Portal/WWW_Kogebogen/MySQL/Anti-SQL-infiktion/A-SQL-i.php"; //Anti-SQL-infiktion
    $tjek = $anti_sql_infiktion_output;
   
    include "/home/amwebdk/public_html/Portal/MySQL/opret-forbindelse.php"; //opretter forbindelse
    $query = "SELECT * FROM `kogebogen-bruger` WHERE brugernavn='".$tjek."'";
    $result = mysql_query("$query") OR DIE(mysql_error());
    $num_rows = mysql_num_rows($result); //$num_rows = antal rækker i MySQL database
   
    if ($num_rows == 1)
    {
    echo '<span style="color:#FF0000;"> - Brugernavnet findes allerede, velg et andet! </span>';
    }
    elseif ($num_rows == 0)
    {
    echo '<span style="color:#419E00;"> - Korekt!</span>';
    }
}
else
{
echo '<span style="color:#FF0000;"> - Ukendt fejl - Prøv igen! </span>';
}
?>

Spørgsmålet stammer fra http://www.eksperten.dk/spm/865678
Avatar billede andreas13_fam Nybegynder
04. marts 2009 - 12:25 #1
Nu er jeg sådan set ved at være (12 forbudte ord) træt af at jeg ikke kan få det til at virke, efter som jeg har siddet og stirret på den samme kode i 3 dage :(
arrrr!!!
Avatar billede andreas13_fam Nybegynder
04. marts 2009 - 12:47 #2
okay fejlen opstår før den sender beskeden til serveren, altså her.
http://www.kogebogen.a-mweb.dk/NyHTML/AJAX/XMLHttpRequest.js
husk kun i IE (måske kun IE7)
Avatar billede majbom Novice
05. marts 2009 - 07:59 #3
ved sq ikke om det hjælper på dit problem, men jeg sender altid en header med, med parametrenes længde:

_oHttp.setRequestHeader("Content-length", sQuery.length);
Avatar billede andreas13_fam Nybegynder
05. marts 2009 - 17:16 #4
Jeg kan desvære først teste det imorgen
Avatar billede andreas13_fam Nybegynder
06. marts 2009 - 16:34 #5
Nææ det virkede ikke :(
ÆV ÆV ÆV.
Det enlig sjovt JavaScript gruppen er efterhånden fyldt med dette problem, men der er ingen der er kommet med en løsning.
Jeg tror at selv Olebole er ved at give op 8-O
Avatar billede majbom Novice
06. marts 2009 - 20:20 #6
nu er det begrænset hvor vild jeg er til javascript og ikke mindst AJAX, men jeg har prøvet at sammenligne dit script med det jeg bruger, og mit ser lidt anderledes ud:

http://pastebin.com/m30b23657

og så bruger jeg den sådan her:

http://pastebin.com/m2cdcc092
Avatar billede andreas13_fam Nybegynder
06. marts 2009 - 21:32 #7
Ov ja der er forskel, det skal da testes lidt (meget)!
Avatar billede andreas13_fam Nybegynder
06. marts 2009 - 21:36 #8
hvad er det der starter
function xmlHttpObject(){bla.bla.}
Avatar billede majbom Novice
07. marts 2009 - 06:14 #9
det gør:

26.function ajaxConn(){
27.    xmlHttp = new xmlHttpObject();
28.}

i den første fil jeg linker til
Avatar billede andreas13_fam Nybegynder
07. marts 2009 - 15:59 #10
Citat:
Et yderligere krav er, at interface'et skal etableres én gang, så der ikke skal testes på, hvad browseren understøtter, hvergang et nyt objekt instantieres. Formålet med dette er naturligvis at spare resourcer.

Betyder det at det skal køres hvergang man skal state en HttpRequest eller skal det kun køres en gang?

Jeg har desuden prøvet med din kode og kan ikke rigtig få det til at virke.
Avatar billede andreas13_fam Nybegynder
07. marts 2009 - 16:13 #11
Nu fik jeg da noget til at virke :D
http://www.kogebogen.a-mweb.dk/NyHTML/TEST/
Avatar billede andreas13_fam Nybegynder
08. marts 2009 - 10:40 #12
Eller ikke :(
Avatar billede andreas13_fam Nybegynder
08. marts 2009 - 10:54 #13
Og nu virker det igen.
Jeg tror at det er fordi at IE afspiller scriptet mens den indlæser det. Mens de andre indlæser og derefter afspiller de.
På din måde fremprovoker man indlæsningsrækkefølgen.

Men man på den anden måde ikke gør. Det må være grunden til at F5 gør en forskel for bruger den de allerede indlæste filer, men nulstiller dem dog.
Avatar billede andreas13_fam Nybegynder
08. marts 2009 - 13:16 #14
Det ser ud til at virke her nu:
http://www.kogebogen.a-mweb.dk/NyHTML/index.php?profil=opret
Så jeg mangler bare at teste på nogle flere computere.
Avatar billede majbom Novice
08. marts 2009 - 18:08 #15
jeg får ingen fejl her på min ie7 i xp sp3.
Avatar billede majbom Novice
08. marts 2009 - 18:16 #16
dit citat i #10 - hvor har du det fra?
Avatar billede andreas13_fam Nybegynder
09. marts 2009 - 18:05 #17
fra dengodekode.dk
Men det lader til at alt virker nu, så jeg er lykkelig :D
Avatar billede majbom Novice
10. marts 2009 - 07:36 #18
kanon :)

er det så med den kode jeg også bruger?
Avatar billede andreas13_fam Nybegynder
10. marts 2009 - 19:18 #19
Ja det er det, jeg har dog slettet alle de kommentarer der var og komprimeret det lidt :D

Og jeg kan nu også sige at jeg har fået det til at virke på 3 andre seriøse sider.

Ville du have point, så må du gerne ligge et svar :D
Avatar billede majbom Novice
11. marts 2009 - 06:45 #20
kanon - well, vi kan da dele, det er trods alt ikkekode jeg selv har skrevet.
Avatar billede andreas13_fam Nybegynder
11. marts 2009 - 15:17 #21
jeg er bare lykkelig :D
Avatar billede majbom Novice
11. marts 2009 - 16:32 #22
tak for point :)
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