Bonjour à tous,
je réalise actuellement un lecteur de flux RSS.
Cette étape concerne l'entrée du flux en base de données.
[list]Je verifie que le nom et l'adress du flux ne sont pas déjà présent.
Si il s'agit d'une nouvelle URL, je vérifie quelle pointe vers un Flux RSS
L'URL étant correcte je rentre tout cela en base de données
[/list]
J'ai néanmoins un soucis la fonction me semble bonne mais quand je teste avec une URL bidon,
la saisi s'effectue en BD. Je solicite votre aide.
[code]
<?php
if(isset($_POST) && !empty($_POST)){
extract($_POST, EXTR_OVERWRITE);
/*
Vérifier que le nom et l'url ne soit pas en DB
*/
$sql="SELECT nom, url FROM site WHERE nom =".'$nom'. "AND url =".'$url'." ";
$result=$connexion->query($sql);
if($result == true){
echo'nom ou url déjà esistant';
header("Location:index.php#form");
}else{
/*
** Vérifier que l'URL saisie pointe vers un flux RSS
*/
function validerRSS($url){
$validateur = 'http://feedvalidator.org/check.cgi?url='; //adress du validateur de flux
if( $reponse = @file_get_contents($validateur . urlencode($url)) ){
if( stristr( $reponse , 'flux valide' ) !== false ){
$a=1;
return true;
}else{
$a=0;
return false;
}
}else{
return false;
}
}//fin function
if(validerRSS()== true){
$sql="INSERT INTO site VALUES ('', '$nom', '$categorie', '$url')";
$result =$connexion->prepare($sql);
$result->execute();
header("Location:index.php");
}
}//fin vérifier url
}//Fin Si $_POST
?>
[/code]