Bonsoir,
JOYEUX NOEL !!!!
j'ai un petit souci, voilà ce que j'essaie de faire :
1. j'ai un formulaire avec des noms et un une checkbox pour chaque nom,
2. je voudrais pouvoir créer un fichier xls avec les informations (sorties de ma bdd) pour chacun des noms selectionner
je précise : un seul fichier xls avec tout les noms dedans, et une premiere ligne avec entete.
j'avais trouvé un code pour faire un fichier complet de la base :
<?php
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=exportclientstotal.xls");
include"../scripts/connex.php";
$idcom=connex('SdData','param');
$requete="SELECT * FROM clients";
$result=@mysql_query($requete,$idcom );
if(!$result)
{
echo "Lecture impossible";
}
else
{
$tbl= " <table border='1' cellpadding='0' cellspacing='0'>
<tr bgcolor='#CCCCCC' height='40px'>
<td>Primary</td>
<td>ID</td>
<td>Date entre</td>
<td>Titre</td>
<td>Nom</td>
<td>Prenom</td>
<td>Nom bis</td>
<td>Prenom bis</td>
<td>Entreprise</td>
<td>Adresse</td>
<td>NPA</td>
<td>Ville</td>
<td>Region</td>
<td>Pays</td>
<td>Telephone</td>
<td>Fax</td>
<td>Mobile</td>
<td>Email</td>
<td>Website</td>
<td>Complement</td>
<td>Interet</td>
<td>Achat</td>
</tr>";
while($row=mysql_fetch_array($result))
{
$tbl = $tbl . "<tr>";
$tbl = $tbl . "<td>" . $row['Primary'] . "</td>";
$tbl = $tbl . "<td>" . $row['ID'] . "</td>";
$tbl = $tbl . "<td>" . $row['EntryDate'] . "</td>";
$tbl = $tbl . "<td>" . $row['Titre'] . "</td>";
$tbl = $tbl . "<td>" . $row['Nom'] . "</td>";
$tbl = $tbl . "<td>" . $row['Prenom'] . "</td>";
$tbl = $tbl . "<td>" . $row['Nombis'] . "</td>";
$tbl = $tbl . "<td>" . $row['Prenombis'] . "</td>";
$tbl = $tbl . "<td>" . $row['Entreprise'] . "</td>";
$tbl = $tbl . "<td>" . $row['Adresse'] . "</td>";
$tbl = $tbl . "<td>" . $row['NPA'] . "</td>";
$tbl = $tbl . "<td>" . $row['Ville'] . "</td>";
$tbl = $tbl . "<td>" . $row['Region'] . "</td>";
$tbl = $tbl . "<td>" . $row['Pays'] . "</td>";
$tbl = $tbl . "<td>" . $row['Telephone'] . "</td>";
$tbl = $tbl . "<td>" . $row['Fax'] . "</td>";
$tbl = $tbl . "<td>" . $row['Mobile'] . "</td>";
$tbl = $tbl . "<td><a href=\"" . $row['Email'] . "\">" . $row['Email'] . "</a></td>";
$tbl = $tbl . "<td>" . $row['Website'] . "</td>";
$tbl = $tbl . "<td>" . $row['Complement'] . "</td>";
$tbl = $tbl . "<td>" . $row['Interet'] . "</td>";
$tbl = $tbl . "<td>" . $row['Achat'] . "</td>";
$tbl = $tbl . "</tr>";
}
$tbl = $tbl . "</table>";
print $tbl ;
}
?>
et je vous mets ici mon formulaire :
<div id="client-partiel">
<span id="handle" style="cursor:move">O</span>
<?php
if(!empty($_POST['tri']))
{$tri=$_POST['tri'];}
else{$tri="nom";}
include"scripts/connex.php";
$idcom=connex('SdData','param');
$requete="SELECT ID,Titre,Nom,Prenom,Nombis,Prenombis,Entreprise,Adresse,NPA,Ville,Pays FROM clients ORDER BY $tri";
$result=@mysql_query($requete,$idcom );
if(!$result)
{
echo "Lecture impossible";
}
else
{
echo '
<form method="post" action="export/xlspartiel.php" id="checkclient" name="checkclient">
<div id="table-partiel">
<table border="0">
<tr>
<td>CHECK</td>
<td>TITRE</td>
<td>NOM</td>
<td>PRENOM</td>
<td>NOM B</td>
<td>PRENOM B</td>
<td>ENTREPRISE</td>
<td>ADRESSE</td>
<td>NPA</td>
<td>VILLE</td>
<td>PAYS</td>
</tr>';
while($row=mysql_fetch_array($result))
{
echo '<tr>
<td><input type="checkbox" name="data[]" id="data[]" value="'.$row['ID'].'"></td>
<td>'.$row["Titre"].'</td>
<td>'.$row["Nom"].'</td>
<td>'.$row["Prenom"].'</td>
<td>'.$row["Nombis"].'</td>
<td>'.$row["Prenombis"].'</td>
<td>'.$row["Entreprise"].'</td>
<td>'.$row["Adresse"].'</td>
<td>'.$row["NPA"].'</td>
<td>'.$row["Ville"].'</td>
<td>'.$row["Pays"].'</td>
</tr>';
}
echo'</table></div>';
echo'</div><div id="client-partiel-menu">
<a href="void(0)" onclick="javascript:sendData(\'checkclient\', \'export/xlspartiel.php\', \'POST\', \'client-partiel-menu\', \'remplirChamps\') ; return false" name="ok" id="ok" style="color:white; Text-decoration:none;">Exporter<img src="images/go.png" align="top" /></a></form></div>';
}
?>
</div>
<div id="client-menu">
<form action="?p=cx" method="post">
<select name="tri" id="tri">
<option value=" Nom ASC">Nom ASC</option>
<option value=" Nom DESC">Nom DESC</option>
<option value="Prenom ASC">Prénom ASC</option>
<option value="Prenom DESC">Prénom DESC</option>
<option value="Pays ASC">Pays ASC</option>
<option value="Pays DESC">Pays DESC</option>
<option value="Ville ASC">Ville ASC</option>
<option value="Ville DESC">Ville DESC</option>
<option value="NPA ASC">NPA ASC</option>
<option value="NPA DESC">NPA DESC</option>
</select>
<input type="submit" id="got" value=""/>
</form>
</div>
<script type="text/javascript">
new Draggable('client-partiel',{handle:'handle'});
</script>
ensuite voici ce que j'ai essayé de faire mais qui ne fonctionne pas :
<?php
include"../scripts/connex.php";
$idcom=connex('SdData','param');
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=clientspartiels.xls");
if(isset($_POST['data']) && is_array($_POST['data']))
{
foreach ($_POST['data'] as $item)
{
$sql="SELECT Titre,Nom,Prenom,Nombis,Prenombis,Entreprise,Adresse,NPA,Ville,Pays FROM clients WHERE ID='$item'";
$req=@mysql_query($sql,$idcom );
if(mysql_errno() != 0)
{
exit();
}
else
{
$tbl= " <table border='1' cellpadding='0' cellspacing='0'>
<tr bgcolor='#CCCCCC' height='40px'>
<td>Titre</td>
<td>Nom</td>
<td>Prenom</td>
<td>Nom bis</td>
<td>Prenom bis</td>
<td>Entreprise</td>
<td>Adresse</td>
<td>NPA</td>
<td>Ville</td>
<td>Pays</td>
</tr>";
while($data = mysql_fetch_assoc($req))
{
$tbl = $tbl . "<tr>";
$tbl = $tbl . "<td>" . $data['Titre'] . "</td>";
$tbl = $tbl . "<td>" . $data['Nom'] . "</td>";
$tbl = $tbl . "<td>" . $data['Prenom'] . "</td>";
$tbl = $tbl . "<td>" . $data['Nombis'] . "</td>";
$tbl = $tbl . "<td>" . $data['Prenombis'] . "</td>";
$tbl = $tbl . "<td>" . $data['Entreprise'] . "</td>";
$tbl = $tbl . "<td>" . $data['Adresse'] . "</td>";
$tbl = $tbl . "<td>" . $data['NPA'] . "</td>";
$tbl = $tbl . "<td>" . $data['Ville'] . "</td>";
$tbl = $tbl . "<td>" . $data['Pays'] . "</td>";
$tbl = $tbl . "</tr>";
}
$tbl = $tbl . "</table>";
}
$tbl = $tbl . "</table>";
print $tbl ;
}
}
?>
voila, si qui que ce soit peut m'aider ce serait sympa,
parce que je ne pige vraiment pas comment faire pour
simplement ajouter une ligne au tableau excel par client coché.
je pense que dans l'ordre il faudrait ceci pour l'entete :
$tbl= " <table border='1' cellpadding='0' cellspacing='0'>
<tr bgcolor='#CCCCCC' height='40px'>
<td>Titre</td>
<td>Nom</td>
<td>Prenom</td>
<td>Nom bis</td>
<td>Prenom bis</td>
<td>Entreprise</td>
<td>Adresse</td>
<td>NPA</td>
<td>Ville</td>
<td>Pays</td>
</tr>";
puis ceci pour les lignes (avec en plus ce qui faut pour attraper seulement les noms cochés):
$tbl = $tbl . "<tr>";
$tbl = $tbl . "<td>" . $data['Titre'] . "</td>";
$tbl = $tbl . "<td>" . $data['Nom'] . "</td>";
$tbl = $tbl . "<td>" . $data['Prenom'] . "</td>";
$tbl = $tbl . "<td>" . $data['Nombis'] . "</td>";
$tbl = $tbl . "<td>" . $data['Prenombis'] . "</td>";
$tbl = $tbl . "<td>" . $data['Entreprise'] . "</td>";
$tbl = $tbl . "<td>" . $data['Adresse'] . "</td>";
$tbl = $tbl . "<td>" . $data['NPA'] . "</td>";
$tbl = $tbl . "<td>" . $data['Ville'] . "</td>";
$tbl = $tbl . "<td>" . $data['Pays'] . "</td>";
$tbl = $tbl . "</tr>";
Merci et Bonne Soirée, et encore joyeuses fêtes :-)
Annadrill