/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Formulardata sendes til samme side som for~
Fra : Michael Jørgensen


Dato : 02-01-10 15:42

Hej derude,

Håber der er nogen som kan hjælpe mig med at få denne formular
helt på plads. Tror jeg er tæt på Jeg vil gerne opnå at man
tilmelder sig med navn om man kommer til træning. Når man har
trykket send, skal navnet gerne fremkomme på samme side. Om
fredagen må koden gerne slette dataene igen. Koden kan ses her:
http://www.michael-j.dk/test/form.php

Jeg kan ikke få dataene til at komme frem på skærmen når jeg har
trykket send. Nederst på siden har jeg indsat <?php
print "". $Name;
print "<br />";

?>

Håber nogen kan hjælpe? På forhånd tak!

/Mike



--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Bertel Lund Hansen (02-01-2010)
Kommentar
Fra : Bertel Lund Hansen


Dato : 02-01-10 16:39

Michael Jørgensen skrev:

> Jeg kan ikke få dataene til at komme frem på skærmen når jeg har
> trykket send.

Jeg kan forklare princippet.

Hver gang en ny side hentes, nulstilles alle formularer - også
selv om det er samme side. Hvis data skal overleve en
genhentning, skal de gemme i sessionvariable. Derfor er man
nødt til på sådan en side at skrive

   session_start();

som første linje. Derefter kan man benytte varable på formen

   $_SESSION['variabelnavn']

De vil bevare deres værdi indtil programmet ændrer den eller
browseren lukkes ned.

Tjek ved programstart om der er trykket send, og opdater
sessionsvariable hvis der er:

if (isset($_POST['send'])) {
$_SESSION['navn']=$_POST['navn'];
}

I formularen skriver du så enten:

   echo "<input type='text' name='navn' value='".$_SESSION['navn']."'>";

eller uden for PHP-afdelingen:

   <input type='text' name='navn' value='<?php echo $_SESSION['navn']; ?>"'>

(bemærk enkelt-anførselstegnene).

--
Bertel
http://bertel.lundhansen.dk/         FIDUSO: http://fiduso.dk/

Stig Johansen (02-01-2010)
Kommentar
Fra : Stig Johansen


Dato : 02-01-10 16:48

Bertel Lund Hansen wrote:

> echo "<input type='text' name='navn' value='".$_SESSION['navn']."'>";
>
> eller uden for PHP-afdelingen:
>
> <input type='text' name='navn' value='<?php echo $_SESSION['navn'];
> ?>"'>

Husk _altid_ at htmlencode den slags output, da man ellers er sårbar overfor
XSS (Cress site scripting),

--
Med venlig hilsen
Stig Johansen

Michael Jørgensen (05-01-2010)
Kommentar
Fra : Michael Jørgensen


Dato : 05-01-10 17:01

Jeg siger tak for svaret!
Jeg er desværre blevet kastet ind i et projekt i min lokale håndboldklub, hvor
jeg måske har fået munden for fuld. Det siger mig desværre ikke så meget,
selvom det er detaljeret skrevet. Håber jeg kan finde nogle tutorials, hvor
netop mit spørgsmål bliver gennemgået fra starten.

Kender du/i evt. et sted, hvor sådan en findes?

Så vidt jeg har forstået nu, så skal jeg oprette en database, som jeg forbinder
til og når nogen indtaster navn og om de kommer til træning, skal jeg "kalde"
resultatet" ud via sql sætninger. Er det nogenlunde rigtigt?

Tak for hjælpen.

/Mike

Bertel Lund Hansen wrote in dk.edb.internet.webdesign.serverside.php:
> Michael Jørgensen skrev:
>
> > Jeg kan ikke få dataene til at komme frem på skærmen når jeg har
> > trykket send.
>
> Jeg kan forklare princippet.
>
> Hver gang en ny side hentes, nulstilles alle formularer - også
> selv om det er samme side. Hvis data skal overleve en
> genhentning, skal de gemme i sessionvariable. Derfor er man
> nødt til på sådan en side at skrive
>
>    session_start();
>
> som første linje. Derefter kan man benytte varable på formen
>
>    $_SESSION['variabelnavn']
>
> De vil bevare deres værdi indtil programmet ændrer den eller
> browseren lukkes ned.
>
> Tjek ved programstart om der er trykket send, og opdater
> sessionsvariable hvis der er:
>
> if (isset($_POST['send'])) {
> $_SESSION['navn']=$_POST['navn'];
> }
>
> I formularen skriver du så enten:
>
>    echo "<input type='text' name='navn' value='".$_SESSION['navn']."'>";
>
> eller uden for PHP-afdelingen:
>
>    <input type='text' name='navn' value='<?php echo $_SESSION['navn']; ?>"'>
>
> (bemærk enkelt-anførselstegnene).
>
> --
> Bertel
> http://bertel.lundhansen.dk/         FIDUSO: http://fiduso.dk/


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Bertel Lund Hansen (05-01-2010)
Kommentar
Fra : Bertel Lund Hansen


Dato : 05-01-10 17:58

Michael Jørgensen skrev:

> Jeg er desværre blevet kastet ind i et projekt i min lokale håndboldklub, hvor
> jeg måske har fået munden for fuld. Det siger mig desværre ikke så meget,
> selvom det er detaljeret skrevet. Håber jeg kan finde nogle tutorials, hvor
> netop mit spørgsmål bliver gennemgået fra starten.

Jeg burde måske ikke sige det, men jeg tror du skal opgive
projektet. Det jeg skrev, er ret enkel PHP. Det du skal lave, er
meget mere omfattende og kræver indsigt i PHP hvis det skal laves
sikkert. Den side af det har jeg slet ikke taget hensyn til.

Og nu snakker du også om SQL som man også skal kende til for at
kunne lave noget brugbart.

> Kender du/i evt. et sted, hvor sådan en findes?

> Så vidt jeg har forstået nu, så skal jeg oprette en database, som jeg forbinder
> til og når nogen indtaster navn og om de kommer til træning, skal jeg "kalde"
> resultatet" ud via sql sætninger. Er det nogenlunde rigtigt?

Ja - meget forenklet. Du skal oprette tabeller skrive data dertil
når nogen udfylder formularen, og så skal du trække data ud når
der skal laves en oversigt.

Databaseadgang skal også laves sikker. Manglende sikkerhed
resulterer i ødelagte data og hærværkede hjemmesider eller endnu
værre: Du opdager ikke at serveren bliver brugt til at pumpe spam
og virus i døgndrift.

--
Bertel
http://bertel.lundhansen.dk/         FIDUSO: http://fiduso.dk/

Michael Jørgensen (05-01-2010)
Kommentar
Fra : Michael Jørgensen


Dato : 05-01-10 19:19

Ok, det tænke jeg også nok. Jeg må se om der er en anden der kan lave eller søge på
nettet efter allerede oprettet kode.

Jeg takker for din tid.

/Mike

Bertel Lund Hansen wrote in dk.edb.internet.webdesign.serverside.php:
> Michael Jørgensen skrev:
>
> > Jeg er desværre blevet kastet ind i et projekt i min lokale håndboldklub, hvor
> > jeg måske har fået munden for fuld. Det siger mig desværre ikke så meget,
> > selvom det er detaljeret skrevet. Håber jeg kan finde nogle tutorials, hvor
> > netop mit spørgsmål bliver gennemgået fra starten.
>
> Jeg burde måske ikke sige det, men jeg tror du skal opgive
> projektet. Det jeg skrev, er ret enkel PHP. Det du skal lave, er
> meget mere omfattende og kræver indsigt i PHP hvis det skal laves
> sikkert. Den side af det har jeg slet ikke taget hensyn til.
>
> Og nu snakker du også om SQL som man også skal kende til for at
> kunne lave noget brugbart.
>
> > Kender du/i evt. et sted, hvor sådan en findes?
>
> > Så vidt jeg har forstået nu, så skal jeg oprette en database, som jeg forbinder
> > til og når nogen indtaster navn og om de kommer til træning, skal jeg "kalde"
> > resultatet" ud via sql sætninger. Er det nogenlunde rigtigt?
>
> Ja - meget forenklet. Du skal oprette tabeller skrive data dertil
> når nogen udfylder formularen, og så skal du trække data ud når
> der skal laves en oversigt.
>
> Databaseadgang skal også laves sikker. Manglende sikkerhed
> resulterer i ødelagte data og hærværkede hjemmesider eller endnu
> værre: Du opdager ikke at serveren bliver brugt til at pumpe spam
> og virus i døgndrift.
>
> --
> Bertel
> http://bertel.lundhansen.dk/         FIDUSO: http://fiduso.dk/


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Anders M (02-01-2010)
Kommentar
Fra : Anders M


Dato : 02-01-10 17:38

Michael Jørgensen wrote in
dk.edb.internet.webdesign.serverside.php:
> Hej derude,
>
> Håber der er nogen som kan hjælpe mig med at få denne formular
> helt på plads. Tror jeg er tæt på Jeg vil gerne opnå at man
> tilmelder sig med navn om man kommer til træning. Når man har
> trykket send, skal navnet gerne fremkomme på samme side. Om
> fredagen må koden gerne slette dataene igen. Koden kan ses her:
> http://www.michael-j.dk/test/form.php
>
> Jeg kan ikke få dataene til at komme frem på skærmen når jeg
har
> trykket send. Nederst på siden har jeg indsat <?php
> print "". $Name;
> print "<br />";
>
> ?>
>
> Håber nogen kan hjælpe? På forhånd tak!
>
> /Mike

Bliver det indsat i en database? Du har vel defineret $Name til
$_POST["name"]?

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Benny Andersen (02-01-2010)
Kommentar
Fra : Benny Andersen


Dato : 02-01-10 10:18

On 2 Jan., 15:42, Michael Jørgensen <fredi...@sol.dk> wrote:
> ... Koden kan ses her:http://www.michael-j.dk/test/form.php
Nej det er ikke koden men siden!

> Jeg kan ikke få dataene til at komme frem på skærmen når jeg har
> trykket send.
Hvad sker der når man 'aktivere submit' i en html form? læs lidt op på
<form> taget og attributten action

Søg
Reklame
Statistik
Spørgsmål : 177449
Tips : 31962
Nyheder : 719565
Indlæg : 6408125
Brugere : 218879

Månedens bedste
Årets bedste
Sidste års bedste