if in echo
Ik probeer een if te maken in een echo. De gewone output zonder if werkt. Ik heb een testblokje gemaakt met if en die werkt ook. Maar als ik ze samenvoeg (zie hieronder) dan loopt het spaak.
Kan iemand me vertellen waar het misgaat?
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
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
<?php
$sql = "SELECT * FROM postcode";
$result = mysqli_query($conn, $sql);
echo "<table align='center'>
<tr>
<th>Nummer</th>
<th>Naam</th>
<th>Vindplaats</th>
</tr>";
while($row = mysqli_fetch_assoc($result))
echo "<tr><td>" . $row["nummer"] . "</td>";
echo "<td>" . $row["naam"] . "</td>";
if ($row["postcode"]==="afstand")
{ echo "<td>" . $row["postcode"] . "</td>"; }
else
{ echo "<td><form action='test2.php' method='post'/>
<input type='submit' name='postcode' value=".$row["postcode"]." /></form></td>";
}
echo "</td>";
echo "</table>";
?>
$sql = "SELECT * FROM postcode";
$result = mysqli_query($conn, $sql);
echo "<table align='center'>
<tr>
<th>Nummer</th>
<th>Naam</th>
<th>Vindplaats</th>
</tr>";
while($row = mysqli_fetch_assoc($result))
echo "<tr><td>" . $row["nummer"] . "</td>";
echo "<td>" . $row["naam"] . "</td>";
if ($row["postcode"]==="afstand")
{ echo "<td>" . $row["postcode"] . "</td>"; }
else
{ echo "<td><form action='test2.php' method='post'/>
<input type='submit' name='postcode' value=".$row["postcode"]." /></form></td>";
}
echo "</td>";
echo "</table>";
?>
Welke (fout)melding krijg je?
Je hebt bij de while() geen { en } gebruikt.
Dan doet de while het alleen op de eerstvolgende regel.
Gewijzigd op 06/04/2016 22:45:31 door - SanThe -
Ik denk dat de variabele $row["postcode"] nooit gelijk zal zijn aan de string "afstand".
- SanThe - op 06/04/2016 22:43:00:
Je hebt bij de while() geen { en } gebruikt.
Dan doet de while het alleen op de eerstvolgende regel.
Dan doet de while het alleen op de eerstvolgende regel.
Heb je dit gelezen?
- correct in te springen
- in en uit (en weer in) PHP blokken te stappen in plaats van echo echo echo echo te gebruiken
- SanThe - op 07/04/2016 00:12:59:
Je hebt bij de while() geen { en } gebruikt.
Dan doet de while het alleen op de eerstvolgende regel.
Dan doet de while het alleen op de eerstvolgende regel.
yep, dat was het (en die schuine streep kwam door een komma)
dank!
Toevoeging op 07/04/2016 01:26:00:
Thomas van den Heuvel op 07/04/2016 00:39:51:
- correct in te springen
wat is correct? wanneer (en hoe ver spring je in?)
nb die echos had ik ff gedaan omdat ik dacht dat ik dan vanzelf bij de fout uit zou komen
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
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
<?php
$sql = "SELECT * FROM postcode";
$result = mysqli_query($conn, $sql);
echo "<table align='center'>
<tr>
<th>Nummer</th>
<th>Naam</th>
<th>Vindplaats</th>
</tr>";
while($row = mysqli_fetch_assoc($result))
{
echo "<tr>
<td>" . $row["nummer"] . "</td>
<td>" . $row["naam"] . "</td>";
if ($row["postcode"]==="afstand")
{
echo "<td>" . $row["postcode"] . "</td>";
}
else
{
echo "<td><form action='test2.php' method='post'/>
<input type='submit' name='postcode' value=".$row["postcode"]." /></form></td>";
}
echo "</tr>";
}
echo "</table>";
?>
$sql = "SELECT * FROM postcode";
$result = mysqli_query($conn, $sql);
echo "<table align='center'>
<tr>
<th>Nummer</th>
<th>Naam</th>
<th>Vindplaats</th>
</tr>";
while($row = mysqli_fetch_assoc($result))
{
echo "<tr>
<td>" . $row["nummer"] . "</td>
<td>" . $row["naam"] . "</td>";
if ($row["postcode"]==="afstand")
{
echo "<td>" . $row["postcode"] . "</td>";
}
else
{
echo "<td><form action='test2.php' method='post'/>
<input type='submit' name='postcode' value=".$row["postcode"]." /></form></td>";
}
echo "</tr>";
}
echo "</table>";
?>
Ik zag direct dat je de <tr> (regel 13) afsluit met een </td> (regel 25).
Gewijzigd op 07/04/2016 01:42:02 door - SanThe -
Quote:
Ik probeer een if te maken in een echo
Het is dat er code bijstaat, zodat een onschuldige voorbijganger tenminste nog een poging kan doen om te begrijpen wat het probleem zou moeten zijn, maar de probleemomschrijving zou al een stuk duidelijker zijn geweest zónder dit zinnetje.