php in html
de bedoeling is dat ik een puzzel maak met 15 getallen en 1 leeg vakje en dat men deze kan ordenen.
ik heb tot nu toe het volgende maar het lukt me niet om dit in mijn 4x4 tabel weer te geven.
Ik ben nog maar een beginner...
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head><title>examenopdracht: arrange </title><head>
<body bgcolor=#99FF00>
Code (php)
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<?php
$cijfers = array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
shuffle($cijfers);
echo "<form action=\"\" method=\"post\">";
Echo"<table border=\"7\" cellpadding=\"3\" align=\"center\" width=\"300\" height=\"300\">";
Echo "<tr>";
For ($i = 0 ; $i < 16 ; $i ++)
{
$a=$i-1;
$b=$i+1;
$c=$i-4;
$d=$i+4;
if ($i>=1)
{
if (($cijfers[$a]==0) and ((($i)%4)!=0))
{
echo "<td>";
echo "<input type= \"radio\" name=\"keuze\" value=\"$i\" /><h1 align=\"center\">$cijfers[$i]</h1>";
echo "</td>";
if (($b)%4 == 0)
{
Echo"<tr><tr>";
}
}
}
if ($i<=14)
{
if (($cijfers[$b]==0) and (($b)%4!=0))
{
echo "<td>";
echo "<input type= \"radio\" name=\"keuze\" value=\"$i\" /><h1 align=\"center\">$cijfers[$i]</h1>";
echo "</td>";
if (($b)%4 == 0)
{
Echo"<tr><tr>";
}
}
}
if ($i<=11)
{
if (($cijfers[$d]==0))
{
echo "<td>";
echo "<input type= \"radio\" name=\"keuze\" value=\"$i\" /><h1 align=\"center\">$cijfers[$i]</h1>";
echo "</td>";
if (($b)%4 == 0)
{
Echo"<tr><tr>";
}
}
}
if ($i>=4)
{
if (($cijfers[$c]==0))
{
echo "<td>";
echo "<input type= \"radio\" name=\"keuze\" value=\"$i\" /><h1 align=\"center\">$cijfers[$i]</h1>";
echo "</td>";
if (($b)%4 == 0)
{
Echo"<tr><tr>";
}
}
}
else
{
echo "<td>";
echo "<h1 align=\"center\">$cijfers[$i]</h1>";
echo "</td>";
if (($b)%4 == 0)
{
Echo"<tr><tr>";
}
}
}
Echo "</tr>";
Echo "</table>";
Echo "</form>";
?>
$cijfers = array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
shuffle($cijfers);
echo "<form action=\"\" method=\"post\">";
Echo"<table border=\"7\" cellpadding=\"3\" align=\"center\" width=\"300\" height=\"300\">";
Echo "<tr>";
For ($i = 0 ; $i < 16 ; $i ++)
{
$a=$i-1;
$b=$i+1;
$c=$i-4;
$d=$i+4;
if ($i>=1)
{
if (($cijfers[$a]==0) and ((($i)%4)!=0))
{
echo "<td>";
echo "<input type= \"radio\" name=\"keuze\" value=\"$i\" /><h1 align=\"center\">$cijfers[$i]</h1>";
echo "</td>";
if (($b)%4 == 0)
{
Echo"<tr><tr>";
}
}
}
if ($i<=14)
{
if (($cijfers[$b]==0) and (($b)%4!=0))
{
echo "<td>";
echo "<input type= \"radio\" name=\"keuze\" value=\"$i\" /><h1 align=\"center\">$cijfers[$i]</h1>";
echo "</td>";
if (($b)%4 == 0)
{
Echo"<tr><tr>";
}
}
}
if ($i<=11)
{
if (($cijfers[$d]==0))
{
echo "<td>";
echo "<input type= \"radio\" name=\"keuze\" value=\"$i\" /><h1 align=\"center\">$cijfers[$i]</h1>";
echo "</td>";
if (($b)%4 == 0)
{
Echo"<tr><tr>";
}
}
}
if ($i>=4)
{
if (($cijfers[$c]==0))
{
echo "<td>";
echo "<input type= \"radio\" name=\"keuze\" value=\"$i\" /><h1 align=\"center\">$cijfers[$i]</h1>";
echo "</td>";
if (($b)%4 == 0)
{
Echo"<tr><tr>";
}
}
}
else
{
echo "<td>";
echo "<h1 align=\"center\">$cijfers[$i]</h1>";
echo "</td>";
if (($b)%4 == 0)
{
Echo"<tr><tr>";
}
}
}
Echo "</tr>";
Echo "</table>";
Echo "</form>";
?>
<br/>
<h2 align="center">
<p>Plaats de getallen van 1 tot en met 15 in de juiste volgorde.</p>
<p>Dit doe je door het getal dat je naar het lege vakje wil verschuiven, aan te kruisen. </p>
<p>Veel plezier!</p></h2>
</body>
</html>
omdat ik mijn code bijna helemaal herschreven heb...
Code (php)
Als je enkele quotes gebruikt tijdens het echoen van html dan hoef je de dubbele quotes niet te escapen die in je html staan. Tevens is het beter en netter om je variabelen buiten de quotes te houden.
- Kijk eens naar de functie http://php.net/manual/en/function.range.php
- je zult tussentijds de positie van de nummers moeten opslaan want anders krijg je elke keer andere nummers zonder dat je verder komt met je puzzel.
Je kunt of een database daarvoor gebruiken maar ik denk dat sessions voor dit spelletje wel voldoende zijn.
- Zorg ervoor dat je pagina opbouw wat netter is. Eerst PHP en dan pas HTML. Er mag best PHP tussen de HTML staan die de grid genereerd maar het is niet de bedoeling dat er PHP tussen staat zoals het gedeelte dat de cijfers declareerd of de boel shuffeled.
Maar dit is zo te zien een examen opdracht? Zou je deze dan niet zelf moeten kunnen maken?
En vooral naar shuffle().
Wat jij doet is wel leuk, maar je kan beter met range() 1tm15 maken en dan shuffle() eroverheen. Dan tonen in een tabel (op deze site kan je vinden hoe je gegevens naast elkaar in een tabel zet... met de % inderdaad).
En dan onderaan nog een lege.
En dan pas ga je naar het Javascript.
Maar als het voor een spel is, kan het ook alleen in Javascript.
- Wat voor PHP fouten/warnings krijg je?
- Heb je, je bestand wel als php bestand opgeslagen en niet als html bestand?
Gewijzigd op 05/06/2012 22:43:34 door Bas IJzelendoorn
- Mark - op 05/06/2012 21:19:37:
Je had net zo goed je oude topic kunnen aanpassen maar goed.
Als je enkele quotes gebruikt tijdens het echoen van html dan hoef je de dubbele quotes niet te escapen die in je html staan. Tevens is het beter en netter om je variabelen buiten de quotes te houden.
- Kijk eens naar de functie http://php.net/manual/en/function.range.php
- je zult tussentijds de positie van de nummers moeten opslaan want anders krijg je elke keer andere nummers zonder dat je verder komt met je puzzel.
Je kunt of een database daarvoor gebruiken maar ik denk dat sessions voor dit spelletje wel voldoende zijn.
- Zorg ervoor dat je pagina opbouw wat netter is. Eerst PHP en dan pas HTML. Er mag best PHP tussen de HTML staan die de grid genereerd maar het is niet de bedoeling dat er PHP tussen staat zoals het gedeelte dat de cijfers declareerd of de boel shuffeled.
Maar dit is zo te zien een examen opdracht? Zou je deze dan niet zelf moeten kunnen maken?
Code (php)
Als je enkele quotes gebruikt tijdens het echoen van html dan hoef je de dubbele quotes niet te escapen die in je html staan. Tevens is het beter en netter om je variabelen buiten de quotes te houden.
- Kijk eens naar de functie http://php.net/manual/en/function.range.php
- je zult tussentijds de positie van de nummers moeten opslaan want anders krijg je elke keer andere nummers zonder dat je verder komt met je puzzel.
Je kunt of een database daarvoor gebruiken maar ik denk dat sessions voor dit spelletje wel voldoende zijn.
- Zorg ervoor dat je pagina opbouw wat netter is. Eerst PHP en dan pas HTML. Er mag best PHP tussen de HTML staan die de grid genereerd maar het is niet de bedoeling dat er PHP tussen staat zoals het gedeelte dat de cijfers declareerd of de boel shuffeled.
Maar dit is zo te zien een examen opdracht? Zou je deze dan niet zelf moeten kunnen maken?
Bedankt voor de tips.
het is inderdaad een examenopdracht dus ik zou hem moeten kunnen maken,
maar het is mijn eerste jaar dat ik heb een uurtje ict krijg en het is niet bepaald mijn beste vak...
Toevoeging op 05/06/2012 23:00:06:
Bas IJzelendoorn op 05/06/2012 22:41:45:
Graag in het vervolg 1 topic openen over 1 onderwerp. Je andere topic heb ik gesloten. Back to topic.[/modedit]
- Wat voor PHP fouten/warnings krijg je?
- Heb je, je bestand wel als php bestand opgeslagen en niet als html bestand?
- Wat voor PHP fouten/warnings krijg je?
- Heb je, je bestand wel als php bestand opgeslagen en niet als html bestand?
Ik heb het bestand als php opgeslagen dus daaraan ligt het niet.
Ik krijg geen fouten/warnings, mijn fout zit in mijn redenering denk ik. ik krijg geen tabel. maar ik krijg het wel opgelost... bedankt
er zitten enkele typos in -> 'and' zou '&&' moeten worden, en waarom echo, for, if enz soms met hoofdletters en soms zonder, hoofdletters zijn daar nergens voor nodig
Wesley barbery op 06/06/2012 19:20:30:
er zitten enkele typos in -> 'and' zou '&&' moeten worden
Onzin.