Avatar billede voirsous Nybegynder
07. januar 2004 - 17:15 Der er 16 kommentarer og
1 løsning

Form-post problem egen server

Hej.
hej se her:
http://80.62.82.126/astronomen/siden/opretbruger.php
hvis i prøver at indtaste random oplysninger i boksene (ingen validering på ryger i frem til en ny side, der skulle gerne stå det brugernavn i skrev.
hvorfor gør det ikke?
koder for begge side
http://80.62.82.126/astronomen/siden/opretbruger.php?s=ja
http://80.62.82.126/astronomen/siden/load.php?s=ja
Avatar billede voirsous Nybegynder
07. januar 2004 - 17:17 #1
register_globals = on er til
Avatar billede stingbat Nybegynder
07. januar 2004 - 17:19 #2
$postbruger = $_post['brugernavn'];
Mon det er pga. at du har skrevet med småt? Prøv:

$postbruger = $_POST["brugernavn"];
Avatar billede stingbat Nybegynder
07. januar 2004 - 17:21 #3
Endvidere.... kan det være en go' idé at ændre:
("SELECT * FROM astro_bruger where brugernavn = '$postbruger'")

til:
("SELECT * FROM astro_bruger where brugernavn = '" . mysql_escape_string($postbruger) . "'")

Dog kommer det så an på om strengen er escape't fra start eller ej :-)
Avatar billede voirsous Nybegynder
07. januar 2004 - 17:25 #4
prøvede at ændre til stort, men det hjalp ikke. DOg har jeg fundet ud af den må indholde et eller andet? FOr når jeg opdatere i mozilla får jeg en oplysningen frem, om siden indholder post data. Eller registrer mozilla bare at den blev videre sendt af en post form?
Er ret sikker på problemmet er i min php-opsætning?
Avatar billede stingbat Nybegynder
07. januar 2004 - 17:28 #5
Prøv evt. at indsætte følgende øverst:
print_r($_POST);
exit();

Så kan du lige se alt hvad der står i $_POST...

Hvis der ikke står så meget, prøv indsætte følgende i stedet:
phpinfo();
exit();

Så burde du i det mindste kunne se hvad der sker...
Avatar billede stingbat Nybegynder
07. januar 2004 - 17:32 #6
En anden ting du kunne prøve:
$postbruger = isset($_POST["brugernavn"]) ? $_POST["brugernavn"] : "";

if ($_POST["navn"] && strlen($postbruger) > 0 && $_POST["kode"]) {

Lidt mere "sikrer" end det andet... ikke sikkert at det har nogen effekt, hvis problemet ligger andetsteds, med at dataerne ikke bliver overført
Avatar billede voirsous Nybegynder
07. januar 2004 - 18:14 #7
print_r($_POST); giver ingen effekt.

http://localhost/astronomen/siden/load.php PHPINFO

anyway tak for de andre små råp ;)
Avatar billede stingbat Nybegynder
07. januar 2004 - 18:16 #8
Hvis $_POST ikke give noget output, så må det betyde at der ikke bliver postet noget - men det vil du så også kunne se iflg. phpinfo :)
Avatar billede stingbat Nybegynder
07. januar 2004 - 18:18 #9
Hov.... de linier med:
print_r($_POST);
exit();

De skal IKKE ind i "opretbruger.php", men derimod "load.php" :-)
Avatar billede voirsous Nybegynder
07. januar 2004 - 18:20 #10
ja min fejl sorry. :)

men anyway, se her
http://80.62.82.126/formsend/form.php
det er efterhånden et tand for mærkeligt hvis det skulle være en fejl i koden?
Avatar billede voirsous Nybegynder
07. januar 2004 - 18:23 #11
me der er ikke rigtig bid i dte som du kan se i eksemplet?
Avatar billede stingbat Nybegynder
07. januar 2004 - 18:28 #12
Har vidst fundet ud af hvor skoen trykker ;)

Hvis du ser på PHP-versionen, er det jo efterhånden en "gammel sag"...

Du har nu 2 muligheder:
1. Installere en nyere udgave (http://www.php.net/downloads.php)
2. Udskifte $_POST med $HTTP_POST_VARS

Håber at du får løst det :-)
Avatar billede stingbat Nybegynder
07. januar 2004 - 18:31 #13
Kunne forresten også være at Apachen skulle upgraderes, hvis du vælger 1. løsning :)
Avatar billede voirsous Nybegynder
07. januar 2004 - 18:36 #14
sjovt det virker at have opdateret software :)
Avatar billede voirsous Nybegynder
07. januar 2004 - 18:38 #15
mange tak for hjælpen
Avatar billede stingbat Nybegynder
07. januar 2004 - 18:40 #16
Ja, men det er pga. at der er lavet en masse rettelser/tilføjelser sidenhen.

Som du kan se på PHP.net (http://www.php.net/manual/en/language.variables.predefined.php), blev $_POST, $_GET osv - de såkaldte "superglobals" først tilføjet i version 4.1.0. Ergo, da du kun havde 4.0.5 (tror jeg det var), kunne du ikke bruge denne - men skulle bruge $HTTP_POST_VARS osv :)
Avatar billede stingbat Nybegynder
07. januar 2004 - 18:41 #17
Var skam så lidt :-)

Men som sagt - ville også have virket selv uden at have opdateret softwaren - hvis du havde brugt løsning 2.
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