Bonjour,
J'ai un petit scripts qui marche très bien, en même temps je cherche développer et partager.
Voila c'est un scripts PHP qui affiche les résultats d'une table avec option de suppression multiple.
Moi ce que je veux faire c'est afficher les résultats de plusieurs table a la fois avec le nom de la table.
par exemple : table1,table2,table3,...
dans ma roquette les tables sont : partenaire1,partenaire2,...
voici le code et merci d'avance :
<?php
$host= "localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="location"; // Database name
$tbl_name="partenaire1"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$sql="SELECT * FROM $tbl_name";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
?>
Gestion des voitures <form name ="form1" method="post" action="">
<table width="400" border="0" cellpadding="3" cellspacing="1" >
----, </td>
Id,
Marque voiture,
Date début,
Date fin,
<?php
while($rows=mysql_fetch_array($result)){
?>
----
">,
<? echo $rows['id']; ?>,
<? echo $rows['marque_voiture']; ?>,
<? echo $rows['date_debut']; ?>,
<? echo $rows['date_fin']; ?>,
<?php
}
?>
----
,
<?
// Check if delete button active, start this
if(isset($_POST['delete'])){
for($i=0;$i<$count;$i++){
$del_id = $_POST['checkbox'][$i];$sql \"DELETE FROM $tbl_name WHERE id'$del_id'\";
$result = mysql_query($sql);
}
// if successful redirect to delete_multiple.php
if($result){
echo \"<meta http-equiv=\\"refresh\\" content=\\"0;URL=sup2.php\\">\";
}
}
mysql_close();
?>
</form>
</td>
</tr>
</table>
Je te donne plusieurs pistes, à toi de voir la meilleure pour toi :
Tu peux utiliser le mot clef SQL UNION ou bien encore utiliser la syntaxe SQL SHOW TABLE [LIKE Patern]. Avec la deuxième piste, tu vas devoir boucler sur tes résultats et ensuite faire tes requêtes sur le résultat courant.
Bref, je te laisse découvrir un peu par toi même, c'est pas trop compliqué :
J'ai pensé aussi à ajouter une colon "fournisseur" dans le tableau des résultats qui affiche le nom de la table pour connaitre d'où vient le résultats de chaque ligne.
Bon jusqu'à la voila le code :
<?php
$host= "localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="location"; // Database name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$sql="SELECT * FROM partenaire1
UNION ALL
SELECT * FROM partenaire2
UNION ALL
SELECT * FROM partenaire3
";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
?>
Gestion des voitures <form name ="form1" method="post" action="">
<table width="400" border="0" cellpadding="3" cellspacing="1" >
----, </td>
Id,
Marque voiture,
Date début,
Date fin,
Fournisseur,
<?php
while($rows=mysql_fetch_array($result)){
?>
----
">,
<? echo $rows['id']; ?>,
<? echo $rows['marque_voiture']; ?>,
<? echo $rows['date_debut']; ?>,
<? echo $rows['date_fin']; ?>,
<? echo $rows['tbl_name']; ?>,
<?php
}
?>
----
,
<?
// Check if delete button active, start this
if(isset($_POST['delete'])){
for($i=0;$i<$count;$i++){
$del_id = $_POST['checkbox'][$i];$sql \"DELETE FROM $tbl_name WHERE id'$del_id'\";
$result = mysql_query($sql);
}
// if successful redirect to delete_multiple.php
if($result){
echo \"<meta http-equiv=\\"refresh\\" content=\\"0;URL=sup2.php\\">\";
}
}
mysql_close();
?>
</form>
</td>
</tr>
</table>