php code invoegen in html
Hallo,
Ik zit met het volgende probleem:
In een ledensysteem wil ik bij het aanmelden (registreren) een aantal (fout)meldingen in een td cel laten zien.
In de php code gaat dit goed met:
maar met:
niet.
Wat zie ik over het hoofd?
Ik zit met het volgende probleem:
In een ledensysteem wil ik bij het aanmelden (registreren) een aantal (fout)meldingen in een td cel laten zien.
In de php code gaat dit goed met:
maar met:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
echo "<form name='resendActivation' action='".$_SERVER['PHP_SELF']."' method='post'>
<table width='800'>
<tr>
<td colspan='3' height='50'> </td>
</tr>
<tr>
<td align='right'><b>Gebruikersnaam:</b></td>
<td><input type='text' size='20' name='username'></td>
<td width='400' valign='top' rowspan='2'><?php echo resultBlock($errors,$successes); ?></td>
</tr>
</table>
</form>";
?>
echo "<form name='resendActivation' action='".$_SERVER['PHP_SELF']."' method='post'>
<table width='800'>
<tr>
<td colspan='3' height='50'> </td>
</tr>
<tr>
<td align='right'><b>Gebruikersnaam:</b></td>
<td><input type='text' size='20' name='username'></td>
<td width='400' valign='top' rowspan='2'><?php echo resultBlock($errors,$successes); ?></td>
</tr>
</table>
</form>";
?>
niet.
Wat zie ik over het hoofd?
Gewijzigd op 11/02/2014 20:29:07 door Dirk Siersema
Kijk eens naar lijn 2, daar haal je de PHP-code netjes buiten je echo. Maar op lijn 11 gebruik je de PHP-tag terwijl je al in de PHP-modus zit.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
echo "<form name='resendActivation' action='".$_SERVER['PHP_SELF']."' method='post'>
<table width='800'>
<tr>
<td colspan='3' height='50'> </td>
</tr>
<tr>
<td align='right'><b>Gebruikersnaam:</b></td>
<td><input type='text' size='20' name='username'></td>
<td width='400' valign='top' rowspan='2'>". resultBlock($errors,$successes). "</td>
</tr>
</table>
</form>";
?>
echo "<form name='resendActivation' action='".$_SERVER['PHP_SELF']."' method='post'>
<table width='800'>
<tr>
<td colspan='3' height='50'> </td>
</tr>
<tr>
<td align='right'><b>Gebruikersnaam:</b></td>
<td><input type='text' size='20' name='username'></td>
<td width='400' valign='top' rowspan='2'>". resultBlock($errors,$successes). "</td>
</tr>
</table>
</form>";
?>
Had de pagina nog niet vernieuwd, maar wat Aar zegt dus inderdaad :)
Gewijzigd op 11/02/2014 20:50:42 door D B
Juist, dit was dus niet de eerste maal dat ik dit niet zag/wist.
Echter de meldingen komen niet in de <td> terecht (heb er al een div omheen gezet).
Echter de meldingen komen niet in de <td> terecht (heb er al een div omheen gezet).
Gewijzigd op 11/02/2014 21:04:38 door Dirk Siersema
Waar komen ze dan wel terrecht, en wat doet die resultBlock()-functie allemaal? Kan je daar wat van laten zien?
De meldingen komen boven de table te staan.
Zal even opzoeken wat resultBlock() doet.
Zal even opzoeken wat resultBlock() doet.
Zal waarschijnlijk in de output van de function zitten :)
resultBlock()
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
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
<?php
//Displays error and success messages
function resultBlock($errors,$successes){
//Error block
if(count($errors) > 0)
{
echo "<div id='error'>
<a href='#' onclick=\"showHide('error');\">[X]</a>
<ul>";
foreach($errors as $error)
{
echo "<li>".$error."</li>";
}
echo "</ul>";
echo "</div>";
}
//Success block
if(count($successes) > 0)
{
echo "<div id='success'>
<a href='#' onclick=\"showHide('success');\">[X]</a>
<ul>";
foreach($successes as $success)
{
echo "<li>".$success."</li>";
}
echo "</ul>";
echo "</div>";
}
}
?>
//Displays error and success messages
function resultBlock($errors,$successes){
//Error block
if(count($errors) > 0)
{
echo "<div id='error'>
<a href='#' onclick=\"showHide('error');\">[X]</a>
<ul>";
foreach($errors as $error)
{
echo "<li>".$error."</li>";
}
echo "</ul>";
echo "</div>";
}
//Success block
if(count($successes) > 0)
{
echo "<div id='success'>
<a href='#' onclick=\"showHide('success');\">[X]</a>
<ul>";
foreach($successes as $success)
{
echo "<li>".$success."</li>";
}
echo "</ul>";
echo "</div>";
}
}
?>
Moet een function niet een return geven ipv echo?
Ook met return lukt het maar deels, het kruisje blijft boven de table staan en er komt maar 1 melding in de <td>.
Zo ver ik weet mag je een DIV niet binnen een tabel gebruiken.
Verder wil ik je adviseren om de enkel- en dubbelquotes om te draaien, HTML vraagt om dubbelquotes.
dus b.v. echo'<div id="naam">';
ten slotte, gebruik geen inline opmaak voor HTML maar gebruik daarvoor een css document.
Verder wil ik je adviseren om de enkel- en dubbelquotes om te draaien, HTML vraagt om dubbelquotes.
dus b.v. echo'<div id="naam">';
ten slotte, gebruik geen inline opmaak voor HTML maar gebruik daarvoor een css document.




