Toon error bij empty page
Ik heb een script waar ik category's heb en daar in post related artikelen.
Ik heb nu als je naar dan krijg je gewoon de content zien van ID 3 related aan category. Eerst kon ik de Test veranderen in wat ik wou en als nog de informatie krijgen van mysql. Als ik nu naar bijvoorbeeld ga:
Dan krijg ik een lege pagina, dit houdt in dat er geen informatie is in de database dus moet er een error tekst op komen zoals:
dit is mijn code:
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
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
<?php
// BEGIN OF SHOWING CONTENT PAGE
if (isset($_GET['id']))
{
$naamID = mysql_real_escape_string($_GET['nameID']);
$id = mysql_real_escape_string($_GET['id']);
$idnext = $id + 1;
$goo = mysql_query("SELECT * FROM category INNER JOIN post ON category.name = post.cat WHERE post.cat = '" .$naamID. "'") or die(mysql_error());
$gnn = mysql_query("SELECT * FROM post WHERE id= $id ") or die(mysql_error());
$gnnn = mysql_fetch_assoc($gnn);
$gooo = mysql_fetch_assoc($goo);
if($gooo['youtube'])
{
$fullurl1 = $gooo['youtube'];
$videoid1=substr($fullurl1,-11);
?>
<h1> <?php echo htmlspecialchars($gooo["title"]); ?> </h1><br />
<p>
<a href="/editpost.php?id=<?php echo htmlspecialchars($gooo['id']);?>"><i>Edit this post</i></a><br />
<iframe width="560" height="315" src="//www.youtube.com/embed/<?php echo htmlspecialchars($videoid1);?>" frameborder="0" allowfullscreen></iframe><br />
</p>
<?php }if($gooo['pic']){ ?>
<p>
<h1><?php echo htmlspecialchars($gooo["title"]); ?></h1><br />
<a href="/editpost.php?id=<?php echo htmlspecialchars($gooo['id']);?>"><i>Edit this post</i></a><br />
<img src="<?php echo htmlspecialchars($gooo["pic"]);?>" style="max-height: auto; max-width: 600px;"/><br>
</p>
<?php }
// END OF SHOWING CONTENT PAGE
} else {?>
// BEGIN OF SHOWING CONTENT PAGE
if (isset($_GET['id']))
{
$naamID = mysql_real_escape_string($_GET['nameID']);
$id = mysql_real_escape_string($_GET['id']);
$idnext = $id + 1;
$goo = mysql_query("SELECT * FROM category INNER JOIN post ON category.name = post.cat WHERE post.cat = '" .$naamID. "'") or die(mysql_error());
$gnn = mysql_query("SELECT * FROM post WHERE id= $id ") or die(mysql_error());
$gnnn = mysql_fetch_assoc($gnn);
$gooo = mysql_fetch_assoc($goo);
if($gooo['youtube'])
{
$fullurl1 = $gooo['youtube'];
$videoid1=substr($fullurl1,-11);
?>
<h1> <?php echo htmlspecialchars($gooo["title"]); ?> </h1><br />
<p>
<a href="/editpost.php?id=<?php echo htmlspecialchars($gooo['id']);?>"><i>Edit this post</i></a><br />
<iframe width="560" height="315" src="//www.youtube.com/embed/<?php echo htmlspecialchars($videoid1);?>" frameborder="0" allowfullscreen></iframe><br />
</p>
<?php }if($gooo['pic']){ ?>
<p>
<h1><?php echo htmlspecialchars($gooo["title"]); ?></h1><br />
<a href="/editpost.php?id=<?php echo htmlspecialchars($gooo['id']);?>"><i>Edit this post</i></a><br />
<img src="<?php echo htmlspecialchars($gooo["pic"]);?>" style="max-height: auto; max-width: 600px;"/><br>
</p>
<?php }
// END OF SHOWING CONTENT PAGE
} else {?>
- Gebruik nooit een * bij JOINS, maar haal alle velden per stuk op. Zo kan je de query op lijn 9 al wegdumpen, omdat je de posts al op zou kunnen halen
- Zorg voor goede foutafhandeling.
- Kijk met mysql_num_rows (of mysqli_num_rows) of het aantal gelijk is aan 0. Zie ook de link die ik net gaf
- Zorg voor duidelijke naamgeving voor je variabelen. $goo, $gnn, $gooo, $gnnn zegt niets en kan verwarrend werken. Zoek ook eens wat op over de: Hungarian Naming Convention als je het overzichtelijk wilt houden.
- Aar - op 07/04/2014 21:01:01:
Eventjes wat tips:
- Gebruik nooit een * bij JOINS, maar haal alle velden per stuk op. Zo kan je de query op lijn 9 al wegdumpen, omdat je de posts al op zou kunnen halen
- Zorg voor goede foutafhandeling.
- Kijk met mysql_num_rows (of mysqli_num_rows) of het aantal gelijk is aan 0. Zie ook de link die ik net gaf
- Zorg voor duidelijke naamgeving voor je variabelen. $goo, $gnn, $gooo, $gnnn zegt niets en kan verwarrend werken. Zoek ook eens wat op over de: Hungarian Naming Convention als je het overzichtelijk wilt houden.
- Gebruik nooit een * bij JOINS, maar haal alle velden per stuk op. Zo kan je de query op lijn 9 al wegdumpen, omdat je de posts al op zou kunnen halen
- Zorg voor goede foutafhandeling.
- Kijk met mysql_num_rows (of mysqli_num_rows) of het aantal gelijk is aan 0. Zie ook de link die ik net gaf
- Zorg voor duidelijke naamgeving voor je variabelen. $goo, $gnn, $gooo, $gnnn zegt niets en kan verwarrend werken. Zoek ook eens wat op over de: Hungarian Naming Convention als je het overzichtelijk wilt houden.
Dank je wel voor de tips, ik zal erna kijken. Ben nog steeds niet uitgekomen met de lege pagina