Page 1 sur 2
Mail d'alerte si le fichier n'est pas présent...
Posté : 27 oct. 2006, 17:07
par El doc
Bonjoir,
J'voulais juste savoir si j'avais une erreur dans mon script car malgré la présence du fichier sur le serveur ca m'envoie le mail d'alerte :'(
<?
//Fichier es-tu là ?
$path = "ipduserveurdestreaming/";
$file = date("Hi", floor((time()-15*60)/60/15)*15*60).".ext";
if (!file_exists($path.$file)){
mail("mon adresse","Réveille-toi du con !","Le fichier ".$path.$file." n'existe pas. Je suis dur avec moi-même mais il le faut :)");
}
?>
Y a t-il un truc à faire du côté du serveur de streaming ? Paramètrage ou autre ?
Merci
El doc
Posté : 27 oct. 2006, 17:23
par Ryle
Faudrait pas spécifier le http devant une ip ?
De plus tu es sur que ton fichier existe vraiment ? (en affichant le nom généré du fichier et en le testant manuellement)
Sinon je vois pas trop l'intérêt de diviser par 15 puis 60 pour multiplier juste après par 15 et 60 : floor(time()-15*60) me semble plus simple pour un même résultat nan ?
Posté : 30 oct. 2006, 16:56
par Invité
Rebonjour et merci Ryle (toujours les mêmes

)
En fait j'indique ceci : mms://000.00.000.00/AudioVideo/, ca devrait fonctionner non ?
Le fichier est bien présent est le mail par quand même
Pour le calcul, je ne me suis pas relu, c'est toi qui a raison
El doc
Posté : 30 oct. 2006, 17:40
par Ryle
C'est quoi comme protocole le mms ? c'est supporté par file_exists() ou par php ? (Cf.
http://us2.php.net/manual/fr/wrappers.php)
Tu as essayé de pointer vers une simple page html pour vérifier s'il la trouvait bien et ne t'envoyait pas de mail du coup ? (faut commencer avec des trucs simple

)
Posté : 31 oct. 2006, 11:25
par El doc
Re,
J'ai testé avec du plus simple en distant, toujours rien. Du coup, j'ai fait un test en local et là encore rien. J'ai finalement essayé en chemin relatif en local et là MAGIE !!!!
La fonction file_exists ne serait dispo qu'en local et relatif ???? Ca me parrait bizarre mais pourquoi pas. J'y vois un peu plus clair mais du coup mon truc de tester sur un serveur distant tombe à l'eau :'(
Si quelqu'un a une soluce ou ne serait-ce qu'une piste je suis preneur ^^
El doc
Posté : 31 oct. 2006, 11:59
par Truc
Peut être que
CECIpourra t'aider
Posté : 31 oct. 2006, 12:04
par Ryle
Quelle version de php est-ce que tu utilises ?
D'après la doc ce n'est qu'avec la version 5 qu'elle fonctionne sur les url : "Depuis PHP 5.0.0 cette fonction peut aussi être utilisée avec quelques protocoles url. "
En revanche, un chemin absolu (sur le système de fichier, pas l'url) devrait fonctionner.
Dans les commentaires il y a un bout de code pour tester une url distante avec fopen :
<?php
function url_exists($url)
{
$handle = @fopen($url, "r");
if ($handle === false)
return false;
fclose($handle);
return true;
}
?>
Edit : Les fonctions de ripat sont peut être plus judicieuses effectivement

Posté : 31 oct. 2006, 15:34
par El doc
Re moi,
J'ai essayé ceci :
<?php
$url="mms://ip/dir/monfichierendur.sonextension";
ini_set ("user_agent", "NSPlayer/9.0.0.2980");
function remote_file_exists ($url){
ini_set("allow_url_fopen", "1");
if (@fclose(@fopen($url, "r"))) {
return true;
} else {
return false;
}
}
if (remote_file_exists($url)=="true") {
mail("[email protected]","No problemo","Fichier présent");
}else{
mail("[email protected]","Warning","Fichier attendu");
}
?>
Ce code me renvoie FALSE quoiqu'il arrive alors que le fichier est bien présent si je tappe l'url en dur dans la barre d'adresse :'(
Pourquoi ???!!!!
El doc
Posté : 31 oct. 2006, 15:42
par Truc
Ptet bien pour le "true" qui est considéré comme chaine de carctères :
if (remote_file_exists($url) == true)
ou
if (remote_file_exists($url))
Posté : 31 oct. 2006, 16:48
par El doc
J'ai essayé les 2 solutions que tu proposais mais sans succès (merci quand même). Je n'ai plus qu'à me pendre à mon câble RJ45 :'(.
*****
[Zeus : Allons, un peu de tenue
]!!!!!!!!!!!!!!! Ca fait du bien, c'est pas constructif mais ca fait du bien. Je continue mes recherches...
C'est p'tet nivo serveur de streaming qu'il y a un truc à faire non ?
El doc
Posté : 02 nov. 2006, 11:01
par El doc
***** [Zeus : Allons, un peu de tenue ]!!!!!!!!!!!!!!!
LOL
Sinon, personne n'a jamais eu à faire ceci ? Si demain, je veux tester depuis mon site qu'une image est bien présente sur le site de PHP FRANCE
http://www.phpfrance.com, je ne peux pas le faire ?
El doc
Posté : 02 nov. 2006, 11:36
par Truc
As tu essayé de travailer avec le script de Ripat (lien donné précédemment)
Posté : 08 nov. 2006, 11:49
par El doc
Oui, j'ai essayé la méthode de ripat mais la librairie CURL ne semble pas être installée et je n'ai pas la main sur le serveur. J'ai essayé pleins de choses, ptit script perso aux ressources du web, sans succès... Ca marche à chaque fois bien quand le script traite des fichiers du serveur sur lequel il se trouve mais dès qu'il s'agit de serveur distant, c'est la M***E ! :'(
Que faire ?
El doc
Posté : 09 nov. 2006, 13:04
par El doc
Personne ? Ca me semble bizarre, je ne dois pas être la seule personne qui a voulu faire cela un jour en PHP ?
Merci de votre aide - J'essaie autre chose...
El doc
Posté : 14 nov. 2006, 15:27
par El doc
Toujours rien
El doc