[php]mijn eerste script

Pagina: 1
Acties:

  • ebborazor
  • Registratie: Maart 2002
  • Laatst online: 10-09-2022
ik heb nu al wat php tutorials doorgelezen en apache en mysql draaien uitstekent :).

Nu wil ik kijken of ik wat van die tutorials begrepen heb.
Ik wil proberen galgje te maken. Bij mijn eerste pagina vraag ik de (2) spelers ($speler1, $speler2) hun naam in te voeren zodat ik die namen later kan gebruiken. Op pagina 2 (waar speler 1 het te rade woord moet invoeren) is er nog geen probleem, maar zodra speler 1 zijn woord heeft ingevoerd en "het spel" weer doorgaat naar pagina 3 (waar speler 2 het woord moet raden) zijn de namen verdwenen. Mijn vraag: Hoe kan ik ervoor zorgen dat deze pagina's meerdere paginas lang te bewaren zijn (zonder gebruik te maken van mysql,of is dat niet zo moeilijk?)

bedankt!

ps. dit is toch geen helpdesk vraag?

  • supakeen
  • Registratie: December 2000
  • Laatst online: 09-09-2025
Je zou een databeest kunnen gebruiken :)

Je kan ook telkens de $speler1 en $speler2 meegeven in de link of met een formpje en dan hidden :)

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

sessies/cookies
en daarvoor moet je ff de manual bekijken ;)

Doet iets met Cloud (MS/IBM)


  • ebborazor
  • Registratie: Maart 2002
  • Laatst online: 10-09-2022
Op dinsdag 25 juni 2002 17:20 schreef D2k het volgende:

en daarvoor moet je ff de manual bekijken ;)
joepie! :9

  • Squall-sX
  • Registratie: April 2002
  • Laatst online: 19-08 11:11
de link.

naam_van_het_bestand?speler1=speler1_naam&speler2=speler2_naam

enzoverder tot je alle gegevens hebt die je nodig hebt.

edit:
je werkt dan wel beter met frames, zodat de spelers de link niet zien, want ik neem aan dat je het woord in de link meegeeft.

  • ebborazor
  • Registratie: Maart 2002
  • Laatst online: 10-09-2022
ok, ik heb dit doorgelezen:
http://www.php.net/manual/nl/function.setcookie.php

Nu zou ik graag willen weten, waar ik dit dan neer moet zetten:

setcookie ("TestCookie", $value);

En hoe ik hem, de cookie, weer kan terugroepen voor pagina 2 en 3 (include?). (en ik neem aan dat $value de variabele is die je op wilt slaan?)

bedankt!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 29-08 19:47

Bosmonster

*zucht*

is een sessie niet makkelijekr?

session_start();
$_SESSION['speler1'] = "Piet";

:) Kuin je op zelfde manier ook weer terugvragen op iedere pagina (wel session_start() bovenin)

(wel ff je sessie-dir goed zetten in PHP.ini als je op windows draait)

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 17:16
Ik wil je toch sterk aanraden om een sessie te gebruiken in plaats van handmatig gegevens door te geven via URL's. Er is eigenlijk geen goede reden om geen sessies te gebruiken, terwijl het doorgeven van gegevens via de client voor problemen kan zorgen als je je gegevens niet goed codeerd of je client niet te vertrouwens is (en dus ongeldige cookies/URL's terugstuurt).

Sessies zijn niet alleen uitstekend geschikt voor wat jij beschrijft, maar zelfs daarvoor bedoelt. Je zou dus wel gek zijn als je niet van deze (high level) functionaliteit gebruik maakt en zelf gaat zitten pielen met coderingen en cookies, met alle gevolgen van dien (beperkte lengtes e.d.).

  • ebborazor
  • Registratie: Maart 2002
  • Laatst online: 10-09-2022
misschien zagen jullie het nog niet doordat ik bij veel mensen overkom als een erg intelligent snel van begrip zijnt persoon (?). Ik moet jullie teleurstellen, dat ben ik niet.

Zouden jullie mij ajb kunnnen uitleggen hoe ik in mijn geval gebruik kan maken van deze session() stuff? Of een link geven die het mij uitlegd (niet die van de documentatie van php.net)

dank u

Verwijderd

waarom niet die van php.net? staat het perfect in hoor :D

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

ebborazor:
(niet die van de documentatie van php.net)
En wat is er mis met die documentatie :?

Trial and error is de beste manier om erachter te komen, hoor, niet iemand die het even kant en klaar voor je uit de magnetron haalt

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 29-08 19:47

Bosmonster

*zucht*

Op dinsdag 25 juni 2002 17:16 schreef ebborazor het volgende:
ik heb nu al wat php tutorials doorgelezen en apache en mysql draaien uitstekent :).

Nu wil ik kijken of ik wat van die tutorials begrepen heb.
Misschien waren we onterecht in de veronderstelling dat je iets wilde leren :?

  • ebborazor
  • Registratie: Maart 2002
  • Laatst online: 10-09-2022
sorry, jullie hebben helemaal gelijk! ik ben gewoon veels te ongeduldig.

Ik stoor jullie de komende 2 uur niet, maar als ik er dan nog niet achter ben vraag ik toch nog een keer iets ok?

Verwijderd

Op dinsdag 25 juni 2002 18:05 schreef ebborazor het volgende:
[...] maar als ik er dan nog niet achter ben vraag ik toch nog een keer iets ok?
daar is dit forum nou eenmaal voor ;)
wel graag info over wat je al hebt geprobeerd enzo...

  • Pwigle
  • Registratie: December 2000
  • Laatst online: 27-08 15:25
Die kerel wil alleen zijn galgje aan de praat krijgen, en nu moet ie sessions gaan gebruiken :?

  • ebborazor
  • Registratie: Maart 2002
  • Laatst online: 10-09-2022
ok, dit doe ik nu:

Bovenaan elk document zet ik:
PHP:
1
<?session_start();session_register('speler1, speler2');?>

Jammer genoeg werkt dit niet, volgens mij is dit omdat ik de variabele niet expliciet toewijs. (Ik haal ze uit de form. Mijn vraag is dus nu, hoe kan ik de variabele uit de form kan halen en in de session.

Misschien zit ik er helemaal naast, hints zijn welkom :Y)

  • Shagura
  • Registratie: Augustus 2001
  • Laatst online: 04-09 22:30

  • Shagura
  • Registratie: Augustus 2001
  • Laatst online: 04-09 22:30
Op dinsdag 25 juni 2002 20:04 schreef ebborazor het volgende:
ok, dit doe ik nu:

Bovenaan elk document zet ik:
PHP:
1
<?session_start();session_register('speler1, speler2');?>

Jammer genoeg werkt dit niet, volgens mij is dit omdat ik de variabele niet expliciet toewijs. (Ik haal ze uit de form. Mijn vraag is dus nu, hoe kan ik de variabele uit de form kan halen en in de session.

Misschien zit ik er helemaal naast, hints zijn welkom :Y)
uit een form hoef je niks te halen! (als het een post form is tenminste)

k, stel je hebt 2 pagina's.
1: pagina1.php
2: pagina2.php
code:
1
2
3
4
5
<FORM METHOD="post" ACTION="pagina2.php"> 
<INPUT TYPE="text" NAME="antwoord">
<INPUT TYPE="text" NAME="vraag">
<INPUT TYPE=submit VALUE="verstuur">
</FORM>

Stel je vult in antwoord 'hallo' in en in vraag 'doei'. Als je dan op de verstuur knop drukt wordt dit alles naar pagina2.php verzonden en kun je daar met de variabelen ($antwoord = hallo en $vraag = doei) doen wat je wilt en gebruik je ze dus voor de volgende pagina.

  • ebborazor
  • Registratie: Maart 2002
  • Laatst online: 10-09-2022
Op dinsdag 25 juni 2002 20:10 schreef Shagura het volgende:

[..]

uit een form hoef je niks te halen! (als het een send form is tenminste)

Als je een formulier doorstuurt naar een andere pagina, dan zijn de 'name' waardes van de form de waardes in de pagina waar je heen heb gestuurd. (bijv <input name="antwoord" value=blaat>, dan is $antwoord = blaat in de pagina waar je het formulier heen heb gestuurd)
Ja, dat begreep ik al, maar ik heb de naam dus ook de pagina daarna weer nodig.

  • Shagura
  • Registratie: Augustus 2001
  • Laatst online: 04-09 22:30
probeer er eens 1 tegelijk te registeren, soms werkt het met een komma ertussen niet en moet je ze apart doen (bij mij bijv. :))

en je hoeft een variable maar 1 keer te registeren, dus dat hoef je niet bovenaan elke pagina te zetten. Als je het 1 keer heb gedaan onthoud ie dat.

  • BitProcessor
  • Registratie: Februari 2001
  • Laatst online: 30-08 23:59
Methode zonder sessions :
code:
1
print('<INPUT TYPE="hidden" NAME="' . $naampje . '">');

"I think there is a world market for maybe five computers" - Thomas Watson, chairman of IBM, 1943


Verwijderd

Op dinsdag 25 juni 2002 20:10 schreef Shagura het volgende:
k, stel je hebt 2 pagina's.
1: pagina1.php
2: pagina2.php
code:
1
2
3
4
5
<FORM METHOD="post" ACTION="pagina2.php"> 
<INPUT TYPE="text" NAME="antwoord">
<INPUT TYPE="text" NAME="vraag">
<INPUT TYPE=submit VALUE="verstuur">
</FORM>

Stel je vult in antwoord 'hallo' in en in vraag 'doei'. Als je dan op de verstuur knop drukt wordt dit alles naar pagina2.php verzonden en kun je daar met de variabelen ($antwoord = hallo en $vraag = doei) doen wat je wilt en gebruik je ze dus voor de volgende pagina.
Niet na versie 4.1.0 hè... dan moet je met $_POST["antwoord"] enzo aan de slag... maar dat even terzijden

maar goed, waarom 3 pagina's gebruiken als je het ook met een switch of ifjes kan doen?

  • Shagura
  • Registratie: Augustus 2001
  • Laatst online: 04-09 22:30
Op dinsdag 25 juni 2002 20:49 schreef zellufs het volgende:

[..]

Niet na versie 4.1.0 hè... dan moet je met $_POST["antwoord"] enzo aan de slag... maar dat even terzijden

maar goed, waarom 3 pagina's gebruiken als je het ook met een switch of ifjes kan doen?
dat kun je ook gewoon in de php config uitzetten dat je $_POST enzo moet gebruiken. Maar dit is offtopic.

  • eamelink
  • Registratie: Juni 2001
  • Niet online

eamelink

Droptikkels

[quote]Op dinsdag 25 juni 2002 20:04 schreef ebborazor het volgende:
ok, dit doe ik nu:

Bovenaan elk document zet ik:
PHP:
1
<?session_start();session_register('speler1, speler2');?>

Je moet quotes zetten om elke variabele apart, dus
PHP:
1
<?session_start();session_register('speler1', 'speler2');?>

Dat zal al schelen :)

Verwijderd

sessions moet je echt wel gebruiken :)

je moet er wel rekening met houden dat deze sessies blijven, dus als ze een nieuw spelletje wil spelen moet je eerset een session_destoy doen ( http://www.php.net/manual/en/function.session-destroy.php )

  • ebborazor
  • Registratie: Maart 2002
  • Laatst online: 10-09-2022
jo, bedankt mensen! het werkt.

Om nieuwe namen in te kunnen voeren moet ik inderdaad eerst een session_destroy() doen, maar kan dat op een andere manier dan op de manier die ik nu gebruik.

Als het spel voorbij is (galgje code moet trouwens nog inelkaar geknutselt worden :+). Stuur ik de speler eerst naar een pagina waar session_destroy() staat, dan laat ik hem weer op een knop drukken om overnieuw te beginnen.

Ik weet haast zeker dat er een snellere manier is, maar ik kan er niet opkomen.

Verwijderd

tijdelijk alles opslaan werkt toch beter denk ik

  • MP83
  • Registratie: Januari 2000
  • Laatst online: 31-01 18:11
Misschien stom wat ik zeg hoor, maar het is nog zo vroeg :z

Kun je die session_destroy() dan niet bovenaan je startpagina zetten. Zodat er ook automatisch weer een nieuwe game wordt gestart :?
Pagina: 1