Tassadar

  • Nombre de sujets
    1
  • Nombre de messages
    4
  • Nombre de commentaires
    Aucun
  • Nombre de news
    Aucune
  • Niveau en PHP
    Débutant

Ses dernières news

Aucune news

Ses derniers sujets sur les forums

forum
Tassadar
le 02/12/2009 à 21:08
chemin acces
Bonsoir,
J'aimerais uploader ce script sur un serveur "free" (http://monsite.free.fr). Comment modifier les adresses du type c:\\ ? J'ai essayé de remplacer C:\\Users\Admin\Desktop\UwAmp\www\webcam\ par http://monsite.free.fr/webcam mais ca ne fonctionne pas.
Merci de votre aide

<?php


$fullpath[0][0] = 'C:\\Users\Admin\Desktop\UwAmp\www\webcam\image\big\saisies\LegetteMtBlanc.jpg';
$fullpath[0][1] = 'C:\\Users\Admin\Desktop\UwAmp\www\webcam\image\big\saisies\BisanneRosiere.jpg';


$img[0][0] = 'http://www.trinum.com/ibox/saisies/images/webcamISDN1.jpg';
$img[0][1] = 'http://www.trinum.com/ibox/saisies/images/saisies_rosieres_mega.jpg';


function save_image($img,$fullpath){

$ch = curl_init ($img);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
$rawdata=curl_exec($ch);
curl_close ($ch);

if(file_exists($fullpath)){
unlink($fullpath);
}

$fp = fopen($fullpath,'x');
fwrite($fp, $rawdata);
fclose($fp);

}

function replace_img_off($img,$alt_img){
if (getimagesize($img)==FALSE){
unlink($img);
copy($alt_img,$img);
}
}

#pas mettre le nom de l'image dans $dest => celui ci se met auto
function resize_img($source,$dest,$x,$y){
$size = getimagesize($source);
$src=imagecreatefromjpeg($source);
$im=imagecreatetruecolor($x,$y);
imagecopyresampled($im, $src, 0, 0, 0, 0, $x,$y, $size[0], $size[1]);
$miniature = $dest.basename($source);
imagejpeg ($im, $miniature);
}


foreach ($img as $key => $valeur) {
foreach ($img[$key] as $key1 => $adress_webcam) {
$path_img = $fullpath[$key][$key1];

//Enregistrement image recuper sur serveur
save_image($adress_webcam,$path_img);

//Si l'image na pas de taille defini(cela veut dire quil nya pas dimage, on affiche donc une image de remplacement
replace_img_off($path_img,"C:\Users\Admin\Desktop\UwAmp\www\webcam\image\offline.jpg");

//creation miniature
resize_img($path_img,'C:\Users\Admin\Desktop\UwAmp\www\webcam\image\small\\'.basename(dirname($path_img)).'\\',320,240);

//Uniformisation des tailles images
$size = getimagesize($path_img );
if ($size[0] != 704 AND $size[1] != 576 ){
resize_img($path_img,"C:\\Users\Admin\Desktop\UwAmp\www\webcam\image\big\\".basename(dirname($path_img)).'\\',704,576);
}

}
}


?>

Ses derniers messages sur les forums

forum
Tassadar
le 04/12/2009 à 08:40
chemin acces
J'ai compris mais je ne pense pas que cela soit mon problème. J'ai pris une capture d'écran de l'arborescense sur le serveur
Mon script (sauvegardewebcam.php) se trouve dans le dossier webcam.Contenu du dossier webcam
Mon script est dans le fichier webcam et le fichier image est bien dans le dossier webcam. Donc image est bien un dossier fils du dossier webcam.
Je pensais pas que c'était si compliqué le transfert de fichier php sur un serveur !smiley
Merci beaucoup pour l'aide !
Tassadar
le 03/12/2009 à 19:41
chemin acces
Effectivement, is_file renvoi false pour toutes les images venant des webcams.


is_file : Valeurs de retour
Retourne TRUE si le nom de fichier existe et que c'est un fichier régulier, FALSE sinon.

Qu'est ce que je dois en conclure ? Ces images existent bien car je peux les afficher sur mon navigateur. Elles ne sont donc pas régulières ?
Pourtant sur mon ordinateur windows le script fonctionne bien. Un fichier peut etre régulier sur windows et pas régulier sur un autre système ?
Est ce qu'il y a une solution ?

Merci beaucoup !!!
Tassadar
le 03/12/2009 à 17:52
chemin acces
Merci, je pensais que l'adresse du serveur commençais par http://... En faite pas du tout !
J'ai donc modifié mon script :

<?php

$path = dirname($_SERVER['SCRIPT_FILENAME']);

$fullpath[0][0] = $path.'/image/big/saisies/LegetteMtBlanc.jpg';
$fullpath[0][1] = $path.'/image/big/saisies/BisanneRosiere.jpg';
$fullpath[0][2] = $path.'/image/big/saisies/BoetetMtBisanne.jpg';
$fullpath[0][3] = $path.'/image/big/saisies/HauteluceChozal.jpg';
$fullpath[0][4] = $path.'/image/big/saisies/HauteluceMtBlanc.jpg';
$fullpath[1][0] = $path.'/image/big/NDBellecombe/CretteVores.jpg';
$fullpath[2][0] = $path.'/image/big/praz/FrontNeige.jpg';
$fullpath[3][0] = $path.'/image/big/crest/WebcamBas1pos2.jpg';

$img[0][0] = 'http://www.trinum.com/ibox/saisies/images/webcamISDN1.jpg';
$img[0][1] = 'http://www.trinum.com/ibox/saisies/images/saisies_rosieres_mega.jpg';
$img[0][2] = 'http://www.trinum.com/ibox/saisies/images/RegiedesSaisies_MEGA.jpg';
$img[0][3] = 'http://www.offline.com/a.jpg';
$img[0][4] = 'http://www.trinum.com/ibox/saisies/images/Hauteluce_mega.jpg';
$img[1][0] = 'http://www.trinum.com/ibox/NDBellecombe/images/NDBellecombe4.jpg';
$img[2][0] = 'http://www.trinum.com/ibox/val-d-arly/Images/praz-front/praz-front_00001.jpg';
$img[3][0] = 'http://www.multi-cam.com/webcam/webcam-crest-voland/photos5/millieu.jpg';


function save_image($img,$fullpath){

$ch = curl_init ($img);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
$rawdata=curl_exec($ch);
curl_close ($ch);

if(file_exists($fullpath)){
unlink($fullpath);
}

$fp = fopen($fullpath,'x');
fwrite($fp, $rawdata);
fclose($fp);

}

function replace_img_off($img,$alt_img){
if (getimagesize($img)==FALSE){
unlink($img);
copy($alt_img,$img);
}
}

#pas mettre le nom de l'image dans $dest => celui ci se met auto
function resize_img($source,$dest,$x,$y){
$size = getimagesize($source);
$src=imagecreatefromjpeg($source);
$im=imagecreatetruecolor($x,$y);
imagecopyresampled($im, $src, 0, 0, 0, 0, $x,$y, $size[0], $size[1]);
$miniature = $dest.basename($source);
imagejpeg ($im, $miniature);
}


foreach ($img as $key => $valeur) {
foreach ($img[$key] as $key1 => $adress_webcam) {
$path_img = $fullpath[$key][$key1];

//Enregistrement image recuper sur serveur
save_image($adress_webcam,$path_img);

//Si l'image na pas de taille defini(cela veut dire quil nya pas dimage, on affiche donc une image de remplacement
replace_img_off($path_img,$path.'/image/offline.jpg');

//creation miniature
resize_img($path_img,$path.'/image/small//'.basename(dirname($path_img)).'//',320,240);

//Uniformisation des tailles images
$size = getimagesize($path_img );
if ($size[0] != 704 AND $size[1] != 576 ){
resize_img($path_img,$path."/image/big//".basename(dirname($path_img)).'//',704,576);
}

}
}


?>


J'ai maintenant un autre problème :

Warning: getimagesize() [function.getimagesize]: Read error! in /mnt/137/sdb/4/etc

Ce messsage s'affiche 6 fois.

De plus quand je parcours les dossiers images censés contenir les captures des webcams, il n'y a que les images de remplacement qui normalement s'affiche si la webcam est hors service.
Est ce qu'il s'agit d'une imitation du serveur free ? Mon script fonctionne tres bien sur mon ordinateur !

Ses derniers commentaires de news

Aucun commentaire de news

Ses derniers commentaires de sites

Aucun commentaire de sites

Ses derniers commentaires de wall

Aucun commentaire wall
LoadingChargement en cours