Tu ne dois plus être très loin^^
Cette fois on change de lignes...
Notice: Undefined variable: last_physical_category in n:\airsoft\easyphp1-8\www\galerie\plugin\secureImages\include\htaccess_generation.inc.php on line 101
Notice: Undefined variable: file in n:\airsoft\easyphp1-8\www\galerie\plugin\secureImages\include\htaccess_generation.inc.php on line 103
Ca c'est en tête des messages.
Notice: Array to string conversion in n:\airsoft\easyphp1-8\www\galerie\plugin\secureImages\include\htaccess_generation.inc.php on line 118
Autant de lignes qu'il y a des fichiers (normal...)
Notice: Array to string conversion in n:\airsoft\easyphp1-8\www\galerie\plugin\secureImages\include\htaccess_generation.inc.php on line 123
Et voilà la dernière ligne :(
C'est bizar que je sois le seul dans ce cas...!
Merci à toi acp de me venir en aide ;-)
Hors ligne
Eh beh décidemment :D...
Bon alors là par contre il y a deux soucis...
1) je ne vois pas pourquoi la ligne 101 est toujours problématique. C'est un OU, donc si le defined($last_physical_directory) (vérifie bien que le nom de ta variable est correcte dans le defined !) renvoie faux (que l'on nie avec le point d'exclamation), on ne devrait pas évaluer la non égalité qui cause l'erreur que tu reçois... Alors à moins qu'il y ait un truc qui ait changé en PHP, mais je n'ai pas vu une telle mention sur www.php.net
Si t'as pas de faute de frappe quelque part, je ne peux te conseiller qu'une bidouille, c'est rajouter après la ligne 97 (unset($last...)) un:
$last_physical_category = -1;
Même remarque pour le file ligne 103, mais là une faute de frappe serait difficile... Hmmm c'est vraiment, vraiment très étrange tout ça... Si tu pouvais me donner la version de PHP que tu utilises s'il-te-plaît, je vais regarder ça de plus près... Pour la ligne 103, garde juste:
if (defined($file))
2) Nos lignes ne correspondent plus là :). Ligne 117 et 118 dans mon fichier:
if (strstr($row['status'], 'public') !== FALSE) { if (!defined($public))
Si tes lignes sont les même, là il y a un gros problème, parce que defined ne devrait jamais renvoyer cette erreur... Est-ce que ta ligne correspond à ma ligne 117 ? Mais alors là c'est que t'as remplacé mon 'public' par $public ?! Je ne sais vraiment pas, là j'essaye de deviner à tout hasard... Vraiment étrange tes erreurs...
Donne moi le contenu des lignes problématiques à la limite, ça sera plus facile ;).
Hors ligne
Ah tiens, nos lignes doivent être les même en fait... 118 et 123, toutes deux contiennent un defined($public)... Ah.... AAAH... bon.. alors je m'excuse... c'est de ma faute (une fois de plus!) :S.
Remplacer tous les defined que je t'ai dis d'ajouter par des isset ... (Ne pas toucher aux defined suivis par une chaîne de caractère, comme par exemple defined('PHPWG_ROOT_PATH') !)
Ça change absolument TOUT...
Désolé, j'ai été un peu vite là...
P.S: Ne pas prendre donc en compte les magouilles ci-dessus :)
Dernière modification par acp (2007-03-31 23:08:50)
Hors ligne
Pour commencer:
Version de PhpWebGallery
* PhpWebGallery 1.6.2
* Dernière version ?
Environnement
* System d'exploitation: WINNT
* PHP: 4.3.10 (Montrer les informations)
* MySQL: 4.1.9-max
Base de données
* 76 éléments (premier élément ajouté le Jeudi 29 Mars 2007)
* 4 catégories dont 4 physiques et 0 virtuelles
* 2 utilisateurs
* 1 groupes
* 0 commentaires utilisateur
Je rappel que je tourne avec EasyPHP... si ça peut venir de là...
Ensuite =>
Avant tes dernières propositions !
Ligne 101 chez moi:
if (!defined($last_physical_category) || $last_physical_category !== $row['storage_category_id']) {
Ligne 103:
if ($file)
Ligne 118:
if (!defined($public))
Ligne 123:
if (defined($file && defined($public)))
Hors ligne
C'est mieux...
Mais...
Notice: Undefined variable: last_physical_category in n:\airsoft\easyphp1-8\www\galerie\plugin\secureImages\include\htaccess_generation.inc.php on line 101
Notice: Array to string conversion in n:\airsoft\easyphp1-8\www\galerie\plugin\secureImages\include\htaccess_generation.inc.php on line 118
Avec la ligne 118 qui se répète....
Mais on y arrive^^
Voici une copie de mes ligne 100 à 127:
while ($row = mysql_fetch_array($result)) {
if (!defined($last_physical_category) || $last_physical_category !== $row['storage_category_id']) {
// We are in another category (or we just started)
if (isset($file))
writeAllHtaccessFiles(dirname($file), $public, $simulate, $return);
$file = preg_replace('|(\.\/)+|',
'./',
PHPWG_ROOT_PATH .
dirname($row['path']) .
'/.htaccess'
);
$public = array();
$last_physical_category = $row['storage_category_id'];
}
if (strstr($row['status'], 'public') !== FALSE) {
if (!defined($public))
$public = array();
array_push($public, basename($row['path']));
}
}
if (defined($file) && defined($public))
writeAllHtaccessFiles(dirname($file), $public, $simulate, $return);
return $return;
}
Hors ligne
Alors là un grand MERCI !!!!
Plus de message d'erreur et cela semble fonctionner correctement:
Lorsque je demande d'accéder à un répertoire quelconque, j'ai le 403 Forbiden^^
Youpi !
Merci bien.
Par contre, est-ce que ces modifications ne peuvent pas servir à d'autres ou je suis "un cas" ?
Merci et bonne nuit !
Hors ligne
Pas de quoi ! Désolé pour les multiples tentatives infructueuses...
Ce genre d'erreur est dû à une configuration qui est beaucoup plus exigeante... Mais en effet, tu as raison, le code est en théorie incorrect, je vais mettre ça à jour de suite...
En cas d'autres problèmes, n'hésite pas à poster un nouveau sujet. Par contre, je risque de ne pas le voir (je fréquente bien moins le forum ces derniers temps) donc tu peux m'envoyer un message perso pour me prévenir... (enfin ceci vaut pour les autres aussi :)
Bonne nuit :).
acp
Hors ligne