Letter controleren hoe het beste?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ocirina Ocirina

Ocirina Ocirina

07/03/2011 15:59:06
Quote Anchor link
Hallo,

ik heb een woord die variabel is, de lengte ook.

Nu moet iemand 1 letter invoeren, als die letter overeenkomt met 1 letter in het woord moet die dat weer geven bijv(woord):

eerst: ----- Na invoeren 'w': W---- en na een 'd' : w---d.

Ik heb dit al:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$woord
= str_split($_SESSION['woord']);
    
$letter = $_POST['letter'];
?>
 
PHP hulp

PHP hulp

21/11/2024 19:18:08
 
Marcel Santing

Marcel Santing

07/03/2011 16:01:38
Quote Anchor link
Net zoiets wat men in google gebruikt tijden het intypen van je query?

Kijk dan even naar AJAX daar kun je leuke dingen mee maken
 
Ocirina Ocirina

Ocirina Ocirina

07/03/2011 16:02:47
Quote Anchor link
@ marcel,

Ik denk het niet. Het is een soort galgje idee?

Bedankt voor je reactie trouwens.
 
Marcel Santing

Marcel Santing

07/03/2011 16:05:51
 
Joren de Wit

Joren de Wit

07/03/2011 16:05:55
Quote Anchor link
Gebruik bijvoorbeeld in_array() om te kijken of een letter in het woord voorkomt. Gebruik een foreach loop als je ook de positie(s) wilt bepalen: loop door de array met letters van het woord heen en controleer in elke loop of de huidige letter gelijk is aan de ingevoerde letter...
 
Ocirina Ocirina

Ocirina Ocirina

07/03/2011 16:07:15
Quote Anchor link
@blanche en marcel
Bedankt voor jullie reacties.

Ik zal even kijken. Als ik er niet uit kom zal ik het laten weten.

Bedankt!
 
- Mark -

- Mark -

07/03/2011 16:26:38
Quote Anchor link
Je kunt een string gewoon als een array benaderen om alle letters af te lopen. In $_SESSION['gegokt'] staan alle letters die door de speler gegokt zijn.

Onderstaande code is niet getest en dient natuurlijk alleen als voorbeeld.

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
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php

    # Settings | Het gezochte woord.
    
        $woord = 'woord';
        
        
    # De lengte van het gezochte woord bepalen.
    
        $length = strlen($woord);
        
        
    # Alle letters van het gezochte woord aflopen.
    
        for($i = 0; $i < $length; $i++){

        # Controleren of de huidige letter als is geraden JA of NEE.
        
            if(in_array($woord[$i], $_SESSION['gegokt'])){

            /*---- INFO: Ja, de huidige letter is al geraden. ----*/
            
            # De huidige letter weergeven.

            
                echo $woord[$i];
                
            }

            else{

            /*---- INFO: Nee, de huidige letter is nog niet geraden. ----*/
            
            # Vervangend teken weergeven.

            
                echo '_';
                
            }        
        }


?>
 
Ocirina Ocirina

Ocirina Ocirina

07/03/2011 17:50:50
Quote Anchor link
Blanke pagina...

Niet dat ik hier me code wil dumpen en dat jullie het oplossen hoor!
Ik heb al van alles geprobeerd..

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
18
19
20
21
22
23
<?php
$woord
= str_split($_SESSION['woord']);
        $length = strlen($_SESSION['woord']);
        $letter = $_POST['letter'];
        
         for($i = 0; $i < $length; $i++)
         {
      
            if(in_array($woord[$i], $_SESSION['wgeb']))
            {

                $_SESSION['wgeb'] = $_SESSION['wgeb']. " " . $letter;
                $_SESSION['aantal'] = $_SESSION['aantal'] + 1;
                echo "Fout, u heeft deze letters gebruikt:";
                echo $_SESSION['wgeb'];
                include_once 'inputveld.php';
                include_once 'invoerveld.php';
            }

            else
            {
            
                echo $woord[$i];
            }
        }

?>


Toevoeging op 07/03/2011 17:54:59:

Warning: str_split() expects parameter 1 to be string, array given in /index.php on line 30

Toevoeging op 07/03/2011 17:58:56:

BTW hier is het regel 2!
Gewijzigd op 07/03/2011 17:55:29 door Ocirina Ocirina
 
- Mark -

- Mark -

07/03/2011 18:01:49
Quote Anchor link
Die str_split() is niet nodig in mijn voorbeeld.

Zet het volgende maar eens op een nieuwe pagina.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php

    $woord
= 'test';

    echo $woord[0];

?>


Je zult dan als het goed is een t zien.
 
Ocirina Ocirina

Ocirina Ocirina

07/03/2011 18:02:32
Quote Anchor link
Mischien is dit makkelijker:

$aantal = wel nodig, (inlcude_once)

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
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?php
ini_set ('display_errors', 1);
error_reporting (E_ALL);

session_start();

if(!empty($_SESSION['aantal'])) //is er al een x gebrpobeerd?
{
        $aantal = $_SESSION['aantal'];
}

else
{
    $aantal = 1;
    $_SESSION['aantal'] = $aantal;
}



if(empty($_SESSION['woord']) OR ($_SESSION['woord']) == '')
{
                                        //ER is nog geen woord, laat het txt bestand en selecteer een woord.
    $file = file("w3gahjxkr.txt");
    $number = array_rand($file);
    $_SESSION['woord'] = $file[$number];
}



if(($_SESSION['aantal']) < 8) // Hoeveel x is er al geraden? 8 of niet?
{
    if($_SERVER['REQUEST_METHOD'] == 'POST')    // Is er geklikt?
    {
        $woord = str_split($_SESSION['woord']);
        $length = strlen($_SESSION['woord']);
        $letter = $_POST['letter'];
        
         for($i = 0; $i < $length; $i++)
         {
      
            if(in_array($woord[$i], $_SESSION['wgeb']))
            {

                $_SESSION['wgeb'] = $_SESSION['wgeb']. " " . $letter;
                $_SESSION['aantal'] = $_SESSION['aantal'] + 1;
                echo "Fout, u heeft deze letters gebruikt:";
                echo $_SESSION['wgeb'];
                include_once 'inputveld.php';
                include_once 'invoerveld.php';
            }

            else
            {
                            echo $woord[$i];
            }
        }
        
        
        
    }

    else //Toon formulier, er is niet geklikt.
    {    
        include_once 'inputveld.php';
        include_once 'invoerveld.php';
    }
}

else // Woord is geraden......!!
{
    echo 'U heeft het woord niet geraden.';
    echo 'Het woord was:' . $_SESSION['woord'];
    $_SESSION['woord'] = '';
    $_SESSION['aantal'] = '1';
}

?>
Gewijzigd op 07/03/2011 18:11:20 door Ocirina Ocirina
 



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.