IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Problème de compréhension.


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9
    Par défaut Problème de compréhension.
    Bonjour a tous,

    Je dois changer d'hebergeur un site internet.
    Jusque la pas de soucis changement de la base de données, des donnée de connection a la bdd ect. ( Le site n'as pas était réaliser par mes soins )

    Tous c'est bien passer mais j'ai un soucis:

    Cette portion de code fonctionne mal :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
     
     
    ]$formats = categories_produits::getFormats($categorie_produit_id);
     
    $quantites = categories_produits::getQuantites($categorie_produit_id);
     
    $objProduits =& new produits();
     
    $cases = array();
     
    if( (isset($formats) && count($formats) > 0) && (isset($quantites) && count($quantites) > 0) ){
    	$cases[0][0] = "<tr><th>&nbsp;</th>";
     
    	$ligne = 1;
     
    	$parite = "impaires";
     
    	foreach($quantites as $key=>$val){
    		$cases[$ligne][0] = "<tr><th class='th_lignes_" . $parite . "'>" . $val . "</th>";
     
    		foreach($formats as $key2=>$val2){
    			if($ligne < 2){
    				$cases[0][count($cases[0])] = "<th>" . $val2 . "</th>";
    			}
     
    			$produitsTemp = $objProduits->getall(array("categorie_produit_id"=>$categorie_produit_id, "quantite_id"=>$key, "format_id"=>$key2, "produit_en_ligne"=>1 ), 0, true );
    			if(isset($produitsTemp) && count($produitsTemp) > 0){
    				$produitTemp = $produitsTemp[0];
     
    				// $lien_positionne = $produitTemp->produit_positionne?" class='lien_positionne'":"";
    				if($produitTemp->produit_promotion){
    					$class_lien = $produitTemp->produit_positionne?" class='lien_promo_positionne'":" class='lien_promo'";
    					$cases[$ligne][count($cases[$ligne])] = "<td class='td_lignes_" . $parite . "'><form action='/panier/ajouter' name='ajouter_panier_" . $produitTemp->produit_id . "' method='post' ><input type='hidden' name='produit_id' value='" . $produitTemp->produit_id . "' /><input type='hidden' name='qte' value='1' /><a" . $class_lien . " href='javascript:document.ajouter_panier_" . $produitTemp->produit_id . ".submit();'><font style=\"text-decoration:line-through;\">" . $produitTemp->produit_prix_public_ht_affichage . " &euro;</font></a><br /><a" . $class_lien . " href='javascript:document.ajouter_panier_" . $produitTemp->produit_id . ".submit();'>" . $produitTemp->produit_prix_public_temp_ht_affichage . " &euro;</a></form></td>";
    				}
    				else{
    					$class_lien = $produitTemp->produit_positionne?" class='lien_positionne'":"";
    					$cases[$ligne][count($cases[$ligne])] = "<td class='td_lignes_" . $parite . "'><form action='/panier/ajouter' name='ajouter_panier_" . $produitTemp->produit_id . "' method='post' ><input type='hidden' name='produit_id' value='" . $produitTemp->produit_id . "' /><input type='hidden' name='qte' value='1' /><a" . $class_lien . " href='javascript:document.ajouter_panier_" . $produitTemp->produit_id . ".submit();'>". $produitTemp->produit_prix_public_ht_affichage . " &euro;</a></form></td>";
    				}
     
    			}
    			else{
    				$cases[$ligne][count($cases[$ligne])] = "<td class='td_lignes_" . $parite . "'>-</td>";
    			}
    		}
     
    		$cases[$ligne][count($cases[$ligne])-1] .= "</tr>";
     
    		$ligne++;
     
    		if($parite == "impaires")
    			$parite = "paires";
    		else{
    			$parite = "impaires";
    		}
     
    	}
     
    	$cases[0][count($cases[0])-1] .= "</tr>";
     
     
    	$chaineCases = "";
    	foreach($cases as $ligne){
    		foreach($ligne as $case){
    			$chaineCases .= $case;		
    		}
    	}
     
    	$t->setvar("cases", $chaineCases);
    }
    Lorsque je clique sur un produit au lieu de m'afficher le tableau, il me redirige vers la page de maintenance...
    Les fonctions associer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
     
    	function getSatut($categorie_produit_id){
    		$sSQL = "SELECT categorie_produit_en_ligne FROM categories_produits WHERE categorie_produit_id = $categorie_produit_id";
    		$result =& fwkdb::array_query ("db", $sSQL, "");
     
    		return $result[0]["categorie_produit_en_ligne"];
     
    	}
     
     
    	function getFamilleID($categorie_produit_id){
    		$sSQL = "SELECT famille_produit_id FROM categories_produits WHERE categorie_produit_id = $categorie_produit_id";
    		$result =& fwkdb::array_query ("db", $sSQL, "");
     
    		return $result[0]["famille_produit_id"];
     
    	}
     
    	function getNiveau($categorie_produit_id){
    		$sSQL = "SELECT categorie_produit_niveau FROM categories_produits WHERE categorie_produit_id = $categorie_produit_id";
    		$result =& fwkdb::array_query ("db", $sSQL, "");
     
    		return $result[0]["categorie_produit_niveau"];
     
    	}
     
     
    	function getNom($categorie_produit_id){
    		$sSQL = "SELECT categorie_produit_nom FROM categories_produits WHERE categorie_produit_id = $categorie_produit_id";
    		$result =& fwkdb::array_query ("db", $sSQL, "");
     
    		return $result[0]["categorie_produit_nom"];
     
    	}
     
    	function getFormats($categorie_produit_id){
    		$sSQL = "SELECT DISTINCT format_id FROM produits WHERE produit_en_ligne = 1 AND categorie_produit_id = $categorie_produit_id";
    		$resultTemp =& fwkdb::array_query ("db", $sSQL, "");
     
    		$resultTemp2 = array();
     
    		for($i=0;$i<count($resultTemp);$i++){
    			$codes_formats =& new codes_formats($resultTemp[$i]['format_id']);
    			$resultTemp2[$i]["lib"] = $codes_formats->lib;
    			$resultTemp2[$i]["id"] = $codes_formats->ID;
    		}
     
    		$resultTemp2 = sort_by_key($resultTemp2, "lib", "ASC");
     
    		for($i=0;$i<count($resultTemp2);$i++){
    			$codes_formats =& new codes_formats($resultTemp2[$i]['id']);
    			$resultTemp[$i]["format_id"] = $codes_formats->ID;
    		}
     
    		$result = array();
     
    		for($i=0;$i<count($resultTemp);$i++){
    			$codes_formats =& new codes_formats($resultTemp[$i]['format_id']);
    			$result[$codes_formats->ID] = $codes_formats->lib;
    		}
     
    		return $result;
    	}
     
    	function getCouleurs($categorie_produit_id){
    		include_once( 'classes/kernel/fwkdb.php' );
    		$db =& fwkDB::instance("db");
     
    		$sSQL = "SELECT couleur_id FROM categories_produits WHERE categorie_produit_id = $categorie_produit_id";
     
    		$result =& fwkdb::array_query ("db", $sSQL, "");
     
    		$codes_couleurs =& new codes_couleurs($result[0]['couleur_id']);
     
    		return $codes_couleurs->lib;
     
    	}
     
    	function getImpression($categorie_produit_id){
    		include_once( 'classes/kernel/fwkdb.php' );
    		$db =& fwkDB::instance("db");
     
    		$sSQL = "SELECT impression_id FROM categories_produits WHERE categorie_produit_id = $categorie_produit_id";
     
    		$result =& fwkdb::array_query ("db", $sSQL, "");
     
    		$codes_impressions =& new codes_impressions($result[0]['impression_id']);
     
    		return $codes_impressions->lib;
     
    	}
     
     
    	function getQuantites($categorie_produit_id){
    		$sSQL = "SELECT DISTINCT quantite_id FROM produits WHERE produit_en_ligne=1 AND categorie_produit_id = $categorie_produit_id";
    		$resultTemp =& fwkdb::array_query ("db", $sSQL, "");
     
    		$resultTemp2 = array();
     
    		for($i=0;$i<count($resultTemp);$i++){
    			$codes_quantites =& new codes_quantites($resultTemp[$i]['quantite_id']);
    			$resultTemp2[$i]["lib"] = $codes_quantites->lib;
    			$resultTemp2[$i]["id"] = $codes_quantites->ID;
    		}
     
    		$resultTemp2 = sort_by_key($resultTemp2, "lib", "ASC");
     
    		for($i=0;$i<count($resultTemp2);$i++){
    			$codes_quantites =& new codes_quantites($resultTemp2[$i]['id']);
    			$resultTemp[$i]["quantite_id"] = $codes_quantites->ID;
    		}
     
     
    		$result = array();
     
    		for($i=0;$i<count($resultTemp);$i++){
    			$codes_quantites =& new codes_quantites($resultTemp[$i]['quantite_id']);
    			$result[$codes_quantites->ID] = $codes_quantites->lib;
    		}
     
     
    		return $result;
    	}

    J'espère avoir était assez clair et avoir posté dans la bonne section, si il vous manque des élements pour m'aider je suis a votre disposition.

  2. #2
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    Salut,
    c'est peut-être dû à un problème de changement de mécanisme des références entre les versions 4 et 5 de PHP mais c'est compliqué à debugger.
    Dans un premier temps peux-tu nous donner la source HTML générée car le problème vient peut-être de :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    href='javascript:document.ajouter_panier_" . $produitTemp->produit_id . ".submit();'

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9
    Par défaut
    Bonjour,

    Je cherche ou sont placer les script java et je poste sa .
    Par contre j'ai oublier de preciser que je suis passer d'un serveur sous windows vers un hebergement chez phpnet sous linux.

    Il y a des problème courant de compatibilité ?

  4. #4
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    A priori, c'est surtout entre les différentes versions/config de php.

    Par contre, quand je demandais la source, je parlais de consulter ta page, puis de faire "afficher source" dans ton navigateur.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9
    Par défaut
    Je vous l'ai envoyé par MP

  6. #6
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    Ok voici donc la sortie du code posté :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <tbody><tr><th width="20" height="20"></th></tr>
    </tbody>
    Je comprends d'ailleurs pas d'où vient width="20" height="20", le code a été modifié entre temps ?

    L'une des variables doit être vide, que donne ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $quantites = categories_produits::getQuantites($categorie_produit_id);
    var_dump($quantites);
    Est-ce que le tableau est déjà vide à ce niveau-là ?

Discussions similaires

  1. [Débutant] problème de compréhension
    Par Sylvester dans le forum Général Java
    Réponses: 18
    Dernier message: 21/07/2005, 09h16
  2. Réponses: 5
    Dernier message: 11/04/2005, 10h21
  3. [C#] Problème de compréhension de System.Convert ET Provider
    Par papouAlain dans le forum Windows Forms
    Réponses: 5
    Dernier message: 18/11/2004, 21h52
  4. onclipevent (problème de compréhension)
    Par stephane eyskens dans le forum Flash
    Réponses: 8
    Dernier message: 24/09/2003, 15h09
  5. Problème de compréhension des ensembles
    Par Cornell dans le forum Langage
    Réponses: 6
    Dernier message: 07/02/2003, 22h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo