begin process at 2012 05 28 20:21:04
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

POO

 > 

Classes & Objets

 > 

[CHERCHE] 'reinstancier' ou quelque chose comme ça


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[CHERCHE] 'reinstancier' ou quelque chose comme ça

dimanche 3 septembre 2006 à 20:40:46 | [CHERCHE] 'reinstancier' ou quelque chose comme ça

craso

bonjour,
je commence a comprendre la POO, et j'ai fait une classe panier. La seule que j'ai comprise à fond, pour le moment. Mais maintenant que je veux m'en servir, je ne sais pas comment ajouter une ligne. J'ai cette ligne dans mon index :
    $_SESSION['client']->ajout_article(array('id'=>$article[0],'nom'=>$tablo['nom'],'prix'=>$tablo['prix'],'quantite'=>$article[1]));

et si je souhaite inserer un nouvel article, ca me remplace l'article, normal puisqu'il n'y a qu'une seule ligne. Ca doit etre simple mais je ne vois pas comment faire.
Quelqu'un peut m'aider s'il vous plait?
Merci d'avance.
lundi 4 septembre 2006 à 08:15:13 | Re : [CHERCHE] 'reinstancier' ou quelque chose comme ça

DiGhan

Salut,


je doute que $_SESSION['client'] soit un objet. Ceci-dit pour mieux t'aider, peux tu nous coller le source de la classe 'panier'.
lundi 4 septembre 2006 à 08:23:01 | Re : [CHERCHE] 'reinstancier' ou quelque chose comme ça

craso

<?php
/*les articles sont des array du type:
array('id'=>1,'nom'=>'chaussette','prix'=>'5,05','quantite'=>'3')
*/
class panier
{
var $liste= array();
var $nom_client;


function panier($nom='anonymous')
{
@session_start();

if(isset ($nom))
{
$this->nom_client = $nom;

}

if(!isset($_SESSION['client']))
{
$_SESSION['client'] = $this->nom_client;
}
}

function ajout_article($array)
{
return $this->liste[] = $array;
}

function suppr($ref="")
{
unset ($this->liste[$ref]);
}

function ajout_quantite($ref="",$qtt=1)
{
$this->liste[$ref]['quantite']+=$qtt;
}

function oter_quantite($ref="",$qtt=1)
{
$this->liste[$ref]['quantite']-=$qtt;
}

function choisir_quantite($ref="",$qtt="")
{
$this->liste[$ref]['quantite']=$qtt;
}

function somme()
{
$total = 0;
foreach($this->liste as $p)
{
$total += $p['prix']*$p['quantite'];
}
return $total;
}

function compter_les_articles()
{
$tot=0;
foreach($this->liste as $sstotal)
{
$tot += $sstotal['quantite'];
}
return $tot;
}

function vider()
{
$this->liste = array();
}

function affich()
{
echo '---------Facture-------------<br/>';
echo 'Nom du client :'.$this->nom_client.'<br/>';

foreach($this->liste as $tab)
{
echo '<pre>';
print_r ($tab);
echo '</pre>';
}
echo $this->compter_les_articles().' article(s)<br/>';
echo $this->somme().' €<br/>';


}
}

class pip
{

}

$chaussette = array('id'=>1,'nom'=>'chaussette','prix'=>'5.05','quantite'=>3);
$tennis = array('id'=>2,'nom'=>'tennis','prix'=>10,'quantite'=>1);

$pip = new panier('Pierre Sabatier');
$pip->ajout_article($chaussette);
$pip->ajout_article($chaussette);
$pip->ajout_article($tennis);
$pip->ajout_quantite(0,5);
$pip->oter_quantite(0);
$pip->choisir_quantite(1,20);
//$pip->suppr(1);
//$pip->vider();
$pip->affich();


?>
lundi 4 septembre 2006 à 20:04:10 | Re : [CHERCHE] 'reinstancier' ou quelque chose comme ça

DiGhan

Salut,

les données sont bien indexées dans $this->liste. Je pense qu'il s'agit simplement d'une mauvaise interprétation de l'affichage.
Tu peux vérifier par toi même en remplaçant la méthode affich() par celle-ci:
function affich() {
  $lim = count($this->liste);
  for($i=0; $i<$lim; $i++) {
    printf('id => %d<br>',$this->liste[$i]['id']);
    printf('nom => %s<br>',$this->liste[$i]['nom']);
    printf('prix => %.2f<br>',$this->liste[$i]['prix']);
    printf('quantite => %d<br><br>',$this->liste[$i]['quantite']);
  }
}

En espérant avoir répondu à ta question...

PS: PHP5 intègre de nouvelles méthodes de traitement des classes(comparé à PHP4).Jetes y un petit coups d'oeil.
www.php.net/recherche 'classe'


Cette discussion est classée dans : ligne, cherche, chose, article, reinstancier


Répondre à ce message

Sujets en rapport avec ce message

Pb de suppression ds un panier [ par titeuf974 ] Bonjour!! Voila.je travail sur un site de commerce en ligne. J'ai donc un panier. En fait, j'ai un prob au niveau de la suppression de l'article du pa Cherche script pour avertir que le webmaster en ligne [ par CBF ] Bonjour,Je cherche script pour avertir que je suis en ligne, en ayant précédement rentrée mon adresse IP dans un fichier TXT.Si qlq a trouvé se genre Comment m'y prendre? [ par zzzzzz ] Salut.En fait jai une table qui contient plusieurs champs. J'aimerai faire une sorte de "confimation" c'est pour un gereur d'article. Qq poste un arti Problème de caddie, help! [ par optimed ] Bonjour!Je suis en train de faire un projet de caddie dans le cadre de mes cours pour la fac, le but étant de simuler un magasin de disques online et problème de $_POST [ par gourby ] voila, j'ai une ligne de code:$caddie->addArticle(&$article, $_POST['fQuantite'], $_POST['fport']);elle est censée rajouter dans mon caddie une ligne Cherche programmeur(s) AJAX pour aider dev. RPG par navigateur [ par witchgunn ] Bonjour, je suis webmaster (28 ans) et je mets sur les rails un projet de RPG jouable dans le navigateur. Le design en est aux finitions : [img]ht proble de suppression d'une ligne dans un tableau dynamique php [ par beloufa26 ] salut je suis entrain de developper en php une application de facturation j'ai creer une fiche ex famille article , et je l'est devisé en deux partie problème de caddie [ par optimed ] Bonjour!Je suis en train de faire un projet de caddie dans le cadre de mes cours pour la fac, le but étant de simuler un magasin de disques online et Cherche un moyen de rediriger selon id... [ par magicjim ] Salut a tous, voila mon petit probleme :Je voudrai qu'un de mes mlembres se connecte,puis grace a la sql y sois rediriger selon son id a une page ???P Problème de champ texte [ par eka808 ] BonsoirJ'ai créé un petit forum où l'on peut poster comme dans tous les forumsCependant, lorsque le message qui est écrit dans un champ texte a plusie


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,248 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales