code qui ne marche pas sur windows mais marche sur linux

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : code qui ne marche pas sur windows mais marche sur linux

Re: code qui ne marche pas sur windows mais marche sur linux

par stefane321 » 22 sept. 2011, 17:37

si je fais
	$pathImg ="D:\inetpub\vhosts\brodepromochic.com\httpdocs\\";
	$delete_file=unlink(''.$pathImg.'photos\img_prod\\'.$row["image"].''); 
et que je retire la variable pathimg du fichier config.php bien sa bug

tk merci pour votre aide

pour ce site je mettrai le chemin dans les variables et la prochaine fois qun client me demandera d'héberger chez progitech de chicoutimi je dirai non merci

Re: code qui ne marche pas sur windows mais marche sur linux

par Mazarini » 22 sept. 2011, 17:26

Regarde ce que contient la variable $pathImg, vhost ne disparait pas de manière magique.
A mon avis tu l'initialises 2 fois.

Re: code qui ne marche pas sur windows mais marche sur linux

par stefane321 » 22 sept. 2011, 17:19

echo ''.$pathImg.'photos\img_prod\\'.$row["image"].'';
donne

D:\inetpubhosts\brodepromochic.com\httpdocs\photos\img_prod\85.JPG
echo $pathImg.'photos\img_prod\\'.$row["image"];
donne

D:\inetpubhosts\brodepromochic.com\httpdocs\photos\img_prod\85.JPG

jai fais un test en écrivant le chemin dans la fonction comme ceci
$delete_file=unlink('D:\inetpub\vhosts\brodepromochic.com\httpdocs\photos\img_prod\\'.$row["image"].''); 
plutot que comme ceci
$delete_file=unlink(''.$pathImg.'photos\img_prod\\'.$row["image"].'');
sa fonctionne mais cest pas pratique

Re: code qui ne marche pas sur windows mais marche sur linux

par Yosh » 22 sept. 2011, 17:11

haaa javais pas remarqué que le vhost disparait ... bizarrre

dans mon code la variable du chemin est

$pathImg ="D:\inetpub\vhosts\brodepromochic.com\httpdocs\\";

mais une fois exécuté dans:

$delete_file=unlink(''.$pathImg.'photos\img_prod\\'.$row["image"].'');

la partie vhost disparait ...


avez-vous une idée de la cause?
Enlève moi ces double simple quote et ré-affiche le path.

EDIT: tu fais un
echo ''.$pathImg.'photos\img_prod\\'.$row["image"].'';
puis
echo $pathImg.'photos\img_prod\\'.$row["image"];

Re: code qui ne marche pas sur windows mais marche sur linux

par stefane321 » 22 sept. 2011, 17:07

haaa javais pas remarqué que le vhost disparait ... bizarrre

dans mon code la variable du chemin est

$pathImg ="D:\inetpub\vhosts\brodepromochic.com\httpdocs\\";

mais une fois exécuté dans:

$delete_file=unlink(''.$pathImg.'photos\img_prod\\'.$row["image"].'');

la partie vhost disparait ...


avez-vous une idée de la cause?

Re: code qui ne marche pas sur windows mais marche sur linux

par Yosh » 22 sept. 2011, 16:50

D:\inetpub\vhosts\brodepromochic.com\httpdocs\config.php
c'est tout de même bien différent de
D:\inetpubhosts\brodepromochic.com\httpdocs\

Re: code qui ne marche pas sur windows mais marche sur linux

par stefane321 » 22 sept. 2011, 16:39

Sauf erreur de ma part, on n'a jamais vu un path commençant par une chaine sans anti-slash (enfin sous linux je sais pas, et de toute façon j'utilise la constante pré-définie DIRECTORY_SEPARATOR)

Donc ton path est faux.
le slash du début je lai enlevé suivant la suggestion de marizani

alors comment avoir le bon path? si:
echo realpath("config.php");
me donne:

D:\inetpub\vhosts\brodepromochic.com\httpdocs\config.php

Re: code qui ne marche pas sur windows mais marche sur linux

par Yosh » 22 sept. 2011, 16:31

Sauf erreur de ma part, on n'a jamais vu un path commençant par une chaine sans anti-slash (enfin sous linux je sais pas, et de toute façon j'utilise la constante pré-définie DIRECTORY_SEPARATOR)

Donc ton path est faux.

Re: code qui ne marche pas sur windows mais marche sur linux

par stefane321 » 22 sept. 2011, 16:25

et le fichier se trouve ou ?
je comprend mal la question ... physiquement il est là le path le dit mais si je fais un
$filename = ''.$pathImg.'photos\img_prod\\'.$row["image"].'';

if (file_exists($filename)) {
    echo "Le fichier $filename existe.";
} else {
    echo "Le fichier $filename n'existe pas.";
}
sa dit que le fichier nexiste pas

Re: code qui ne marche pas sur windows mais marche sur linux

par Mazarini » 22 sept. 2011, 16:14

et le fichier se trouve ou ?

Re: code qui ne marche pas sur windows mais marche sur linux

par stefane321 » 22 sept. 2011, 16:03

Code : Tout sélectionner

inetpubhosts\brodepromochic.com\httpdocs\photos\img_prod\54.jpg

Re: code qui ne marche pas sur windows mais marche sur linux

par Yosh » 22 sept. 2011, 15:52

Affiche cette chaine
echo "".$pathImg."photos/img_prod/".$row["image"]."";
Rien d'anormal ?

Re: code qui ne marche pas sur windows mais marche sur linux

par stefane321 » 22 sept. 2011, 15:38

quand je disais rien ne fonctionne cétait après avoir essayé les suggestions de marizani

Re: code qui ne marche pas sur windows mais marche sur linux

par Yosh » 22 sept. 2011, 15:32

rien ne fonctionne
Si tu pouvait lire les réponses, cela te donnerais une piste.

Et en l’occurrence Mazarini à un très bon début de piste.

Vérifie donc ton chemin.

Re: code qui ne marche pas sur windows mais marche sur linux

par stefane321 » 22 sept. 2011, 15:28

rien ne fonctionne