Etiquettes pour publipostage

rafou77 Messages postés 65 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 7 février 2007 - 11 mars 2005 à 02:18
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 - 11 mars 2005 à 15:09
Coucou,

Voilà j'aimerai crèer une page qui reprendrait les enregisterment de ma base càd nom,prenom, adresse, code_postal, localite, pays et qui afficherai 4 colonnes et 10 ligne ce qui ferai 40 cellules , 1 enregistrement par cellule, c'est pour faire du publipostage avec des étiquettes.

J'ai essayé mais pas moyen
voici mon code:

<?php

$req = mysql_query(\"select nom,prenom,adresse,ville,code_postal,localite,pays from clients2\");

if (mysql_num_rows($req)==0)
{
echo(\"----
Aucune réponse !, \");
}
else
{$i=0; $j=0;
while($ligne = mysql_fetch_array($req))
{
$i++;

$adresse = $ligne[\"adresse\"];
$ville = $ligne[\"ville\"];
$nom = $ligne[\"nom\"];
$prenom = $ligne[\"prenom\"];
$code_postal = $ligne[\"code_postal\"];
$localite = $ligne[\"localite\"];
$pays = $ligne[\"pays\"];

if($i%3==1) {
echo \"<tr bgcolor=#\";

if($j%2) echo \"EFEFEF>\";
else echo \"DEDEDE>\";
}

echo(\"

".$ligne["nom"].", ".$ligne["nom"].",
\");
if($i%3==0) {
echo \"\";
$j++;
}
}

}

?>

3 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
11 mars 2005 à 10:28
Hello,



heu...c'est bien complique tout ca pour un tableau basique ?

Qu'est ce qui te pose probleme ?

Tu veux 4 colonnes, donc 4 <td>. A la fin du groupe de 4 <td> tu fermes </tr> et tu rouvres <tr>.

Bref...

<table>

Ton while {

<tr><td>var_1</td><td>var_2</td><td>var_3</td><td>var_4
5 et 6 ou ce que tu veux</td></tr>

}

Apres, tu peux continuer a jouer avec les modulos pour changer la couleur des lignes, oui.



Au passage : utilises des CSS, pas des attributs genre bgcolor.
0
rafou77 Messages postés 65 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 7 février 2007
11 mars 2005 à 14:04
euh ok mais je veux que tout les enregistrement de ma base se mettent dans chaque cellule .

Je ne comprend pas à quoi correspond var_1, var_2 ect... au nom peut-être mais si je met nom entre chaque <td></td> il va se répeter, donc j'aurai bien 4 colonnes mais avec 4 fois le meme nom etc....

en réalité c'est pour imprimer tout les enregistrement pour faire du publipostage avec étiquettes collantes mais il faudrait que la mise en forme soit bonne pour cela... çàd une
table avec 4 colonnes et 10 lignes ce qui ferai 40 cellules qui comprendraient chaque enregistrements. Ensuite une autre table ainsi de suite...

Merci pour votre patience
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
11 mars 2005 à 15:09
Ok, je saisis un peu mieux.

Imaginons...

tu fais ta requete.

Tu fais ton while pour la parcourir.

A chaque iteration de ta boucle, tu recuperes 1 enregistrement, ok ? Tu
veux mettre, si je pige bien, tout cet enregistrement ( a savoir 7
donnees : nom, prenom, adresse etc) dans une cellule, appartennant a un
tableau de 4 colonnes et 10 lignes.

Je pars de ton while :

echo '';

$cpt = 1;

while ($enr = mysql_fetch_assoc($requete)) {

echo '',tous tes enregistrements ($enr['nom'], $enr['prenom']...) separes par une virgule ,', ';

if ($cpt % 4 == 0) {

echo '----
';

}

$cpt ++;

}

echo '
';



Ca devrait fonctionner sauf erreur de calcul de ma part.
0
Rejoignez-nous