PHP vraag.

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

David asd

david asd

18/09/2010 16:02:52
Quote Anchor link
Ik ben bezig met een script voor galgje in PHP.
code tot nu toe:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
session_start();
$geraden_letter = "a";
$galgje_woorden = array("aardworm", "creatuur", "andividu", "achepsel", "aoogmoed", "ajdelheid", "areffend", "alooster", "aouwwerk");
$rand = rand(0, 8);
$raadwoord = $woord;
$woord = str_split($galgje_woorden[$rand]);
$letter = array("*","*","*","*","*","*","*","*");
for( $i = 0; $i >= 7; $i++)
{

if($geraden_letter = $woord[$i])
{
$letter[$i] = $geraden_letter;}
}

echo "$letter[0] $letter[1] $letter[2] $letter[3] $letter[4] $letter[5] $letter[6] $letter[7]";
?>

Ik heb om te testen in elk woord een a gezet en als raadwoord a gekozen, maar om de één of andere reden blijft
echo "$letter[0] $letter[1] $letter[2] $letter[3] $letter[4] $letter[5] $letter[6] $letter[7]";
********
geven en niet:
a*******

Ik hoop dat iemand me kan helpen,
 
PHP hulp

PHP hulp

22/12/2024 18:32:17
 
Crude Oil

Crude Oil

18/09/2010 16:07:47
Quote Anchor link
wordt de waarde in de array wel gewijzigd op de manier waarop jij het doet?
 
David asd

david asd

18/09/2010 16:09:36
Quote Anchor link
$letter[$i] = $geraden_letter
zorgt dat er niet voor dat $letter[$i] de waarde van $geraden_letter krijgt?
 
Niek s

niek s

18/09/2010 16:09:54
Quote Anchor link
$raadwoord = $woord;
$woord = str_split($galgje_woorden[$rand]);

?
 
Mark L

Mark L

18/09/2010 16:10:44
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php

if($geraden_letter = $woord[$i])
{
$letter[$i] = $geraden_letter;}
}

?>


Als (PHP zet $geraden_letter met de waarde $woord[$i]).. Je vergelijkt niet, dus doe je d.m.v. == of === een enkele =, zorgt ervoor dat je een waarde ZET.
Daarbij kun je ook echo implode(' ', $letter); doen.
 
David asd

david asd

18/09/2010 16:15:39
Quote Anchor link
bedankt voor alle reacties :)
@ niek ja die moeste andersom en
@ mark kzal kijken of het dan werkt

Toevoeging op 18/09/2010 16:19:57:

okay ik heb nu
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
session_start();
$geraden_letter = a; // hier wordt de letter die is gekozen opgeslagen
$galgje_woorden = array("aardworm", "creatuur", "andividu", "achepsel", "aoogmoed", "ajdelheid", "areffend", "alooster", "aouwwerk"); // hier staan alle mogelijke worden opgeslagen
$rand = rand(0, 8);
$raadwoord = $galgje_woorden[$rand];
$woord = str_split($raadwoord); // hier wordt het woord gesplitst in 8 letters
$letter = array("*","*","*","*","*","*","*","*");
    for( $i = 0; $i >= 7; $i++)
    {

        if($geraden_letter == $woord[$i])
        {

        $letter[$i] = $geraden_letter;
        }
    }

echo implode(' ', $letter);
?>


maar als output krijg ik nog steeds:
********
Gewijzigd op 18/09/2010 16:30:55 door david asd
 
Jan talpa

jan talpa

18/09/2010 16:54:17
Quote Anchor link
je hebt het al opgelost
Gewijzigd op 18/09/2010 17:58:55 door jan talpa
 
David asd

david asd

18/09/2010 17:13:54
Quote Anchor link
wat bedoel je precies? :p

Toevoeging op 18/09/2010 17:28:36:

ow bedankt :p maar ik snap nog steeds niet waarom bij
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
if($geraden_letter == $woord[$i])
        {
        $letter[$i] = $geraden_letter;
        }

$letter[$i] niet "a" wordt. :s

Toevoeging op 18/09/2010 17:31:41:

okay ik heb het nu met
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
        if($geraden_letter == $woord[0])
        {
        $letter[0] = $geraden_letter;
        echo "Je hebt een goede letter geraden!<br />";
        }

geprobeerd zonder gebruik te maken van for($i = 0; $i >=8; $i++){}
en het werkt nu wel , wel een beetje langere code maar ik doe het maar gewoon zo :p
 
Jan talpa

jan talpa

18/09/2010 17:39:22
Quote Anchor link
oke succes met je script
Gewijzigd op 18/09/2010 17:42:34 door jan talpa
 
Arjan -

Arjan -

18/09/2010 19:57:32
Quote Anchor link
Je for loop klopt ook niet. Het moet kleiner of gelijk aan zijn in plaats van groter of gelijk aan.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.