Avatar billede nomad Nybegynder
02. januar 2003 - 02:03 Der er 8 kommentarer

Undefined Variable men den er defined!!!

Jeg er ganske vist lidt n00b til php og er godt i gang med Wrox's Beginning php! Jeg kører en Apache/2.0.43 (Win32) webserver. Mit problem er følgende...

Først Formens kode:

<form method="post" action="adressmaker_file.php">
Intastfilnavn (*.php)!
<input name="name" type="text" size="15">
<input type="submit" value="Submit!">
</form>

og her kommer php koden fra adressmaker_file.php:

<?php
$filename = "$_POST['name']";
echo "http://".$_SERVER["SERVER_ADDR"]."/"."$filename";
?>

Det skulle også være fint nok men mit problem er at jeg får dette output Notice: Undefined index: 'name' in D:\webroot\adressmaker_file.php on line 26
http://131.164.130.81/

line 26 = $filename = "$_POST['name']";

HJÆÆLP!?!
Avatar billede nomad Nybegynder
02. januar 2003 - 02:15 #1
Det sjove er at jeg har lavet et andet sjovt lille script der virker 100% @ http://131.164.130.81/fireworks.php det er lidt mystisk eller også har jeg lavet en eller anden dum fejl!
Avatar billede angelod Novice
02. januar 2003 - 02:17 #2
Jeg er ikke helt sikker, men fejlen kan sagtens være at du bruger "" udenom $_POST['name']. Prøv at ændre linien til en af følgende:

$filename = $_POST['name'];
eller
$filename = "{$_POST['name']}";
Avatar billede nomad Nybegynder
02. januar 2003 - 02:22 #3
kan jeg få et svar så du kan få nogle point
Avatar billede nomad Nybegynder
02. januar 2003 - 02:23 #4
det virkede se evt. http://131.164.130.81/index.php
Avatar billede tipsen Nybegynder
02. januar 2003 - 09:56 #5
$filename = $_POST['name'];

-er den rigtige syntaks...
Avatar billede nomad Nybegynder
02. januar 2003 - 13:21 #6
hvadså hvis man hellere vil hente indholdet fra en query string altså <form method=get.....
er det så:

<?php
$filename = "$_GET['name']";
echo "http://".$_SERVER["SERVER_ADDR"]."/"."$filename";
?>

og burder det ikke være mugligt at hente den blot hved at skrive:

<?php
echo $name;
?>
????
Avatar billede angelod Novice
02. januar 2003 - 19:11 #7
Sorry.. Har været ude hele dagen. :)

Nej, det kræver at register_globals er slået til, og så vidt jeg husker, er den ikke aktiveret på din maskine.. Det er også langt bedre at bruge superglobals ($_*), da der er noget højere sikkerhed.
Avatar billede tipsen Nybegynder
03. januar 2003 - 10:17 #8
$filename = $_GET['name']; er det rigtige - med mindre du skal have alm tekst med kan du godt skrotte dine dobbelte anførselstegn - det behøver du ikke uden om variable og konstanter.
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