Changer les messages quotidienne de PHP

Résolu/Fermé
Arbitta Messages postés 76 Date d'inscription jeudi 5 mars 2015 Statut Membre Dernière intervention 16 février 2016 - 17 mars 2015 à 14:42
Arbitta Messages postés 76 Date d'inscription jeudi 5 mars 2015 Statut Membre Dernière intervention 16 février 2016 - 18 mars 2015 à 10:36
salut ,
j'ai ce code php qui teste l'existence des balises meta dans un lien donné.Comment je peut faire pour que le serveur PHP m'affiche en cas d'erreur le message que je le précis et non pas sont message.
Exemple : si la balise Meta description n'existe pas alors je veut qu'il afficher sur écran seulement : la balise n'existe pas .Et non pas :
Notice:
Undefined index: description in C:\EasyPHP5.3.9\www\docum\Analy.php on line 9

2 réponses

jordane45 Messages postés 38151 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 2 mai 2024 4 652
17 mars 2015 à 15:28
Bonjour,
Grâce à la fonction ISSET...


if(!isset($mavariable)){
 echo "La variable n'existe pas";
}


0
Arbitta Messages postés 76 Date d'inscription jeudi 5 mars 2015 Statut Membre Dernière intervention 16 février 2016
17 mars 2015 à 15:44
oui je sais ça mais je veut changé le message d'erreur que le Serveur PHP l'affiche par mon propre message.
0
jordane45 Messages postés 38151 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 2 mai 2024 4 652 > Arbitta Messages postés 76 Date d'inscription jeudi 5 mars 2015 Statut Membre Dernière intervention 16 février 2016
17 mars 2015 à 15:47
Tu ne peux pas !
Ce sont des messages d'erreurs "types" liés à des erreurs de script dans ton code.....
Pour ne pas les avoir (ou afficher autre chose...) c'est à toi de coder "proprement" en utilisant par exemple les ISSET !
0
Arbitta Messages postés 76 Date d'inscription jeudi 5 mars 2015 Statut Membre Dernière intervention 16 février 2016
17 mars 2015 à 15:51
Et Comment je peut faire ça??
0
jordane45 Messages postés 38151 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 2 mai 2024 4 652 > Arbitta Messages postés 76 Date d'inscription jeudi 5 mars 2015 Statut Membre Dernière intervention 16 février 2016
Modifié par jordane45 le 17/03/2015 à 16:00
Je t'ai donné un exemple ... et tu m'as dit que tu savais...... ??????

Mais bon.... sans voir ton code... difficile de te répondre.

Donc imaginons que ton souci se trouve sur des variables de type POST....
ça donnerait quelque chose du genre:
 $author = isset($_POST['author'])?$_POST['author']:NULL;
if(!$author){
 echo "<br>Ceci est mon message d'erreur pour dire que author n'existe pas !! ";
}
0
Arbitta Messages postés 76 Date d'inscription jeudi 5 mars 2015 Statut Membre Dernière intervention 16 février 2016
Modifié par jordane45 le 17/03/2015 à 16:27
Voilà Mon code :
<?php
$tags = get_meta_tags($_POST['Lien']);
if ($tags['description'])
{ echo ($tags['description']);} 
else {echo ("la balise description est introuvable");} 
if ($tags['author'])      
{echo ($tags['author']);} 
else {echo ("la balise author est introuvable");} 
if ($tags['keywords'])
{echo ($tags['keywords']);} 
else {echo ("la balise keywords est introuvable");} 
if ($tags['geo_position'])
{echo ($tags['geo_position']);} 
else {echo ("la balise position est introuvable");} 
?>


Si les Attributs n'existe pas (par exemple : meta author n'existe pas dans ma page html ) alors il m'affiche le message d'erreur en plus mon probre message que la balise author est introuvable .

EDIT : Ajout des balises de code
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
0
jordane45 Messages postés 38151 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 2 mai 2024 4 652
Modifié par jordane45 le 17/03/2015 à 16:32
1 - Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code


2 - Voici le code corrigé :
$tags = isset($_POST['Lien'])?get_meta_tags($_POST['Lien']):NULL;
if($tags){
 //récupération des variables 
 $description = isset($tags['description'])?$tags['description']:NULL;
 $author = isset($tags['author'])?$tags['author']:NULL;
 $keywords = isset($tags['keywords'])?$tags['keywords']:NULL;
 $geo_position = isset($tags['geo_position'])?$tags['geo_position']:NULL;
 
 //affichage des message si les balises n'existent pas :
 if(!$description){  echo "la balise description est introuvable";}
 if(!$author){    echo "la balise author est introuvable";}
 if(!$keywords){    echo "la balise keywords est introuvable";}
 if(!$geo_position){  echo "la balise geo_position est introuvable";}

}else{
 echo "<br> La balise tags n'existe pas ! ";
}



Cordialement,
Jordane
0
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 225
Modifié par gravgun le 17/03/2015 à 18:48
Accessoirement, depuis PHP 5.3 on peut raccourcir les opérateurs ternaires, qui renvoient la valeur donnée si elle évalue à
true
, sinon l'autre valeur spécifiée (donc si
false
ou inexistante); exemple:
 $description = $tags['description'] ?: NULL;
 $author = $tags['author'] ?: NULL;
 $keywords = $tags['keywords'] ?: NULL;
 $geo_position = $tags['geo_position'] ?: NULL;
0
Arbitta Messages postés 76 Date d'inscription jeudi 5 mars 2015 Statut Membre Dernière intervention 16 février 2016
18 mars 2015 à 10:36
Merci beaucoup Jordane et gravgun . C'est ça ce que je cherche ;) .
0