insérer un formulaire de calcule de mensualité

badibad
Invité n'ayant pas de compte PHPfrance

19 mai 2007, 17:38

j'ai que ca dans le nom de cette fonction

badibad
Invité n'ayant pas de compte PHPfrance

19 mai 2007, 17:39

desoler je me suis encore goure

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

20 mai 2007, 15:18

question subscidiaire: c'est toi qui as pensé et écrit ton programme ou quelqu'un d'autre :?:
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

badibad
Invité n'ayant pas de compte PHPfrance

20 mai 2007, 16:18

Bonjour


j'ai pris un module de oscommerce que j'ai modifier mais je croix que je me casse la tete pour rien car je croi que ce que je recherche n'est pas passible il faudrai que 'il est du genre deux champ en 1 je m'esplisque

le client selection ca mensualités par exemple 25 € puis que les montant possible pour les mensalités de 25 € aparaice à coté un genre dee double options en sorte mais j'ai pas trouver

si je trouve rien je croit que je vais juste mettre les mensualiter avec une explication à coter

a plus et merci :wink:

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

21 mai 2007, 10:27

Le problème n'est pas que ce n'est pas possible mais il est double:
  • 1. Tu utilises du code où tu ne maîtrise pas tout, il n'est donc pas facile pour toi de l'adapter (d'où ton dilème)
    2. Tu expose mal ce que tu veux faire dans le sens où la description des régles n'est pas claire ou mal organisée.
Je doute que tu auras beaucoup de réponses. :? pourtant c'est simple et techniquement réalisable ce que tu veux faire.
Mais tantque la question est obscure, les réponses tentent d'aporter des lumières.
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

badibad
Invité n'ayant pas de compte PHPfrance

21 mai 2007, 19:18

snif snif j'y arriverais jamais

badibad
Invité n'ayant pas de compte PHPfrance

21 mai 2007, 19:28

en premier lieu je doit recupérer le prix total de la commande du client qui ce trouve dans la table order_total (value)

donc j'ai mis ca
tep_db_query("select value from " . TABLE_ORDERS_TOTAL . " where orders_id = '" . (int)$orders['orders_id'] . "' and class='value'");


avec ca plus loin
for ($i = 0, $n = sizeof($order->totals); $i < $n; $i++) {



plus ca dans body
<div>
               <td class="text"><span style="font-size: 8pt">Total commande:</span></td>
               <td  <input    value="<?php   echo '              <tr>' . "\n" . '                <td align="right" class="smallText">' . $order->totals[$i]['text'] . '' . "\n" .  '                <td align="right" class="smallText">' . $order->totals[$i]['value] . '' . "\n" .         '              </tr>' . "\n";?>"/> </td> 
                 </div>   </tr>

mais rien ne s'affiche[/php]

badibad
Invité n'ayant pas de compte PHPfrance

26 mai 2007, 16:54

Bonjour avec un peu de perseverance on arrive à tout j'ai recupérer tout mais champ (total etc)

mais j'ai encor deux blem à regler le premier c'est que je voudrais supprimer certain champ suivant

le montant comme ceci mais ca marche pas


// disable the module if the order only weight < 10

 global $Profession,  $finContratMois, $finContratAnnee ;
 if ($this->enabled == true) {
   if ($cart->show_weight() < '10') {
     $this->enabled = false;
   }
 }
}

et je pense que je devrais fait autent de table sql qu'il il a de mensualiter exemple:

table 15€ montant possible : 110 130 140 160 220 etc....
table 25€ montant possible : 130 150 220 300 etc..
table 35€ etc...

mais le probleme c'est que je vais me retrouver avec des table de partout


Si quelq'un à une idée merci d'avance

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

27 mai 2007, 22:43

Je vais te suggérer une solution même si ça reste pas clair du tout ton histoire.

Pour les mensualités, t'as pas besoin de 36 tables, mais une seule suffit où tu peux mémoriser les mensualités avec les montants leur correspondant comme ça:
table: mensualité (valeur_mens float, montants varchar(255) )
la chaîne "montants" doit contenir tous les montants correspodants à une mensulaité "valeur_mens"
Les montants peuvent être séparés par des point-virgules.
Exemple:
Contenu possible de la table "mensulaité":
---------------------------------------------------
  • valeur_mens = 15 montants = "110;130;140;160;220"
    valeur_mens = 25 montants = "130;150;220;300"
    ...
Après, quand tu récupére une ligne de cette table, tu peux récupérer les montants d'une mensualité dans un tableau en convertissant la chaîne "montants" comme ça:
$montants = explode(";" , $row["montants"] ); //$row est une ligne de la table
Remarque en ce qui concerne ton code: il vaudrait mieux enlever les quotes qui entourent 10 comme ça:
if ($cart->show_weight() < 10) { 
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

badibad
Invité n'ayant pas de compte PHPfrance

28 mai 2007, 13:57

Bonjour deja merci enormement de votre aide je n'y serai jamais arriver sans vous alors un grand merci
j'ai suivi vos conseil j'ai installer ma base de donner (valeur mensualité et montants) comme ci dessus

mais le problème c'est pour la recupérer j'ai du fair une erreur mais j'arrive pas à savoir ou

donc voilla ce que j'ai mis

$req_query = mysql_query('SELECT * FROM mensualité_tbl'); 
$montants= mysql_num_rows($req_query);

et ceci

  <tr>
                <td class="main"><?php echo ENTRY_MENSUALITE; ?></td>
                <td class="main"><?php echo tep_draw_input_field('mensualite', $montants = explode(";" , $row["montants"] )). '&nbsp;' . (tep_not_null(ENTRY_MENSUALITE_TEXT) ? '<span class="inputRequirement">' . ENTRY_MENSUALITE_TEXT . '</span>': ''); ?></td>
              </tr>

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

28 mai 2007, 15:38

Non, mysql_num_rows() ne lit pas le résultat, elle donne simplement le nombre d'enregistrements du résultat. Il faut utiliser mysql_fetch_assoc() pour lire dans une boucle While.

En plus, le champ "montants" une fois soumis à la fonction explode(), te retourne un tableau de montants il faut donc le parcourir pour afficher les montants un par un.

Comme ça:
<?php
$req_query = mysql_query('SELECT * FROM mensualité_tbl'); 
while ( $req_query && ($row = mysql_fetch_assoc($req_query)) ) { //lecture du résultat SQL 
	//Obtenir les montants
	$montants = explode(";" , $row["montants"]);
	//puis les afficher un par un
	if (is_array($montants)) foreach ($montants as $un_montant){
?>
<tr>
                <td class="main"><?php echo ENTRY_MENSUALITE; ?></td>
                <td class="main"><?php echo tep_draw_input_field('mensualite', $un_montant). '&nbsp;' . (tep_not_null(ENTRY_MENSUALITE_TEXT) ? '<span class="inputRequirement">' . ENTRY_MENSUALITE_TEXT . '</span>': ''); ?></td>
</tr>
<?php
	}//fin foreach
}//fin while
?>
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

badibad
Invité n'ayant pas de compte PHPfrance

28 mai 2007, 16:30

:D merci enormement

je sais que vous aller vous enerver mais y a un truc qui va pas

j'ai mis le code tel quel puis j'ai essayer de le placer ailleur mais ca n'aparait pas

badiabd
Invité n'ayant pas de compte PHPfrance

28 mai 2007, 16:36

:cry: c'est à cause de mes méches blonde :D

merci d'avance

badibad
Invité n'ayant pas de compte PHPfrance

29 mai 2007, 10:08

bon j'ai chercher et recherche je me demande si le probleme ne vient pas du if

merci de m'aiclairer

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

29 mai 2007, 21:12

Veux-tu poster le code de toute ta page réelle, pour que je puisse t'aider. :wink:
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène