Dans ma base de données, j'ai obtenu des enregistrements individuels qui sont affichés par son propre ID. Dans l'URL est comme ceci: site.com/index.php?id=1
. Mais si j'écris l'adresse avec un ID qui n'existe pas (comme site.com/index.php?id=3553255
) il m'envoie à la page que j'utilise comme "modèle", mais sans données (une page vide).PHP & MySQL enregistrements vides
Comment envoyer un état d'en-tête 404, si l'enregistrement est vide ou n'existe pas?
Ceci est mon code:
<?php
if(isset($_GET['id'])) {
$id = mysql_escape_string($_GET['d']);
include 'mysql_conexion.php';
$sql=" SELECT * FROM portfolio WHERE id='$id'";
$data=mysql_query($sql,$conexion);
while ($row=mysql_fetch_array($data)) {
$id=$row['id'];
$heading=$row['heading'];
}
echo "<div><h1>$heading</h1></div>";
}
mysql_free_result($data);
mysql_close($conexion);
?>
Note: J'ai essayé avec fonction d'autre et en-tête « else {header ('HTTP/1.0 404 Not Found', true, 404);} sortie " et en-tête: emplacement, mais n'a pas fonctionné.
Merci de votre attention.
Vous devriez imprimer quelque chose avant l'appel à 'header()', c'est pourquoi cela ne fonctionne pas. – arielnmz