Redirection après erreur SQL pour données non trouvées.

WRInaute discret
Bonjour,

Je gère un site qui comprend plus de 1400 Tv, que j'ajoute sur une base donnée MySQL via l'addon d'un cms.

A chaque nouvel ajout, l'url de ce type /modules.php?name=Video_Stream&page=watch&id=558 et incrémentée d'un. Donc 558, 559, 560

Le problème et que quand je supprime une tv, et qu'un visiteur veut acceder à la page ou se trouvait cette tv, il voit une erreur SQL.
Celle-là :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

Je cherche un moyen de remplacer ce texte par un message disant aux visiteurs que cette tv n'existe plus, ou simplement un moyen de les rediriger sur la page d'acceuil.

Quelle stratégie me conseillez-vous ? :roll:
 
WRInaute discret
juste après ta première requête qui utilise l'id que tu passes en paramètres, tu testes si les données sont vides ou pas (le tableau construit avec mysql_fetch_assoc() ou mysql_fetch_array())
 
WRInaute discret
Bonjour jarreweb

merci je vais regarder plus en profondeur, car je ne trouve pas ces deux requettes dans les fichiers du module.

Le problème vient peut-être aussi du fichier watch.php (celui qui affiche les pages de visionnement des tv)
Voici le début du code qui fait référence à l'id de la page.
$id = $_GET['id'];
$request = $_GET['request'];
if($id == "request") {
// Gets the data of request video **FOR ADMIN**
$result = $db->sql_query("SELECT * FROM ".$prefix."_video_stream WHERE id='$request'");
$row = $db->sql_fetchrow($result);
} else {
// Check if category is adult category and requires user to accept disclaimer or if required ofr the user to be registered
adultcategory($id);

// adds a view to the video
$result = $db->sql_query("SELECT * FROM ".$prefix."_video_stream WHERE id='$id'");
$row = $db->sql_fetchrow($result);
$v = $row['views'];
$v++;
$result = $db->sql_query("UPDATE ".$prefix."_video_stream SET views='$v' WHERE id='$id'");
// Gets the data of that video
$result = $db->sql_query("SELECT * FROM ".$prefix."_video_stream WHERE id='$id'");
$row = $db->sql_fetchrow($result);
}
 
WRInaute discret
Oui, c'est corrigé maintenant j'ai remplacé les <br> par des \n et les à la ligne fonctionnent :D

Bonne journée, bon soleil !
 
Discussions similaires
Haut