Erreur Suppression D'un Produit Par Le Client

4 posts in this topic

Posted · Report post

Bonjour

j'expérimente  actuellement un problème sur certains produits lorsque je les retire de la liste de commande en front office (suppression par le petit X rouge dans le tableau).

J'ai ce message d'erreur qui apparait :

 

Notice: Undefined offset: 2 in /homepages/5/d334204221/htdocs/lib/class/Caddie.php on line 596

Warning: Cannot modify header information - headers already sent by (output started at /homepages/5/d334204221/htdocs/lib/class/Caddie.php:596) in /homepages/5/d334204221/htdocs/lib/fonctions/fonctions.php on line 1035

Warning: Cannot modify header information - headers already sent by (output started at /homepages/5/d334204221/htdocs/lib/class/Caddie.php:596) in /homepages/5/d334204221/htdocs/lib/fonctions/fonctions.php on line 1039

 

Voilà chez moi les lignes de code du fichier lib/fonctions/fonctions.php : 1033 à 1041

function redirect_and_die($url, $permanent_redirection = false)
{
	header("Location: " . $url);
	if ($permanent_redirection) {
		header("HTTP/1.1 301 Moved Permanently");
	}
	header('Connection: close');
	die();
}

et fichier lib/class/caddie.php ligne 596 :

 

	delete_uploaded_file_and_thumbs($tableau_attribut_id[2]);

 

J'ai remarqué que ça concernait plus les produits avec attributs...

 

merci pour votre aide

 

Jean-Luc

Share this post


: post
Share on other sites

Posted · Report post

Re !

je me répond à moi même !!

je viens de chercher sur le fofo car cette erreur me disait bien quelque chose... Normal, j'avais déjà ouvert un post à l'époque concernant cette erreur !

voir là :

 

Donc l'erreur es réapparue.

Pour corriger, on fait :

 

 modifier la ligne 598 de lib/class/Caddie.php :

if (array_key_exists(0, $tableau_attribut_id)) {

par

if (array_key_exists(0, $tableau_attribut_id) && !empty($tableau_attribut_id[2])) {

 

et là tout doit rentrer dans l'ordre !!

 

Gilles ? Simon ? pouvez vous corriger l'erreur pour les prochaines versions ? merci à vous...

Share this post


: post
Share on other sites

Posted · Report post

Bonjour,

 

Sur la version 7.0.1 actuellement distribué, le code correspondant à ces lignes est :

 

        if (!empty($attributs_list)) {
            foreach(explode("§", $attributs_list) as $attribut_infos_list) {
                $attribut_infos = explode("|", $attribut_infos_list);
                if (!empty($attribut_infos[2])) {
                    // si c'est un attribut de type upload ou texte libre
                    delete_uploaded_file_and_thumbs($attribut_infos[2]);
                }
            }
        }

=> Il y a un bien un test sur la valeur de $attribut_infos[2] avant son utilisation. Avez-vous modifié cette partie du code?

Share this post


: post
Share on other sites

Posted · Report post

ha bé non ! j'ai rien modifié là dedans !!!

étrange

je tourne en 7.0.0

 

voilà ce que j'ai sur la 7.0.0 :

if (!empty($attributs_list)) {
			foreach(explode("-", $attributs_list) as $tableau_id_array) {
				$tableau_attribut_id = explode("|", $tableau_id_array);
				if (count($tableau_attribut_id)) {
					if (array_key_exists(0, $tableau_attribut_id) && !empty($tableau_attribut_id[2])) { // si c'est un attribut en texte libre
						delete_uploaded_file_and_thumbs($tableau_attribut_id[2]);
					}
				}
			}

 

Mais vous avez sorti la 7.0.1 ?? j'avais même pas vu ! LOL

Share this post


: post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

Twitter Advisto ecommerce

Facebook PEEL Shopping