par
jeff83fr » 02 oct. 2009, 19:07
Bonjour,
j'ai un problème de récupération a ma base de donné, je m explique, je travaille dans un grand groupe et je souhaiterai faire un annuaire de tous le personnel et de toutes les société et personne présente dans le groupe, je souhaiterai donc faire une page un peu comme les pages jaunes avec un champs qui/quoi et un champs ou.
Je vous laisse mon programme en php, si vous pourriez me donnez la solution je vous en serrez tres reconnaissant, en vous remerciant par avance.
voici mon programme :
<form action="traitement.php" method="post">
<br /> Recherche rapide :</h1>
<form method="post" action="traitement.php">
<p>
<label for="qui" style="FONT-SIZE: 25pt;" >Qui?Quoi?ex:Artisan,Restaurant,Commerce...</label>
<input type="text" style="FONT-SIZE: 25pt;" name="qui" id="qui" value="" size="60" maxlength="20" />
<label for="ou" style="FONT-SIZE: 25pt;" >Ou?ex:ville,code postal,adresse.</label>
<input type="text" style="FONT-SIZE: 25pt;" name="ou" id="ou" value="" size="60" maxlength="20" />
</p>
<input name="submit" type="image" img src="pic/deco/resultat.png" id="submit">
</form>
<?php
// Maintenant on doit récupérer les 10 dernières entrées de la table
// On se connecte d'abord à MySQL :
mysql_connect("*****", "*****","******"); // Connexion à MySQL
mysql_select_db("********"); // Sélection de la base varpro
$qui = htmlspecialchars ($_POST['qui']);
$ou = htmlspecialchars ($_POST['ou']);
$reponse = mysql_query("SELECT CONCAT(Société,Activité) FROM varpro WHERE Activité Like '%$qui%'");
UNION
$reponse2 = mysql_query("SELECT CONCAT(Adresse,Code.Postal) FROM varpro WHERE Code.Postal Like '%$ou%'");
while ($donnees = mysql_fetch_array($reponse)
while ($donnees2 = mysql_fetch_array ($reponse2) )
{
?>
<p>
<strong>requete</strong> : <?php echo $donnees['Société']; ?><br />
<strong>Société</strong> : <?php echo $donnees2['Code.Postal']; ?><br />
Email :<?php echo $donnees['Email']; ?><br />
Site Internet:<?php echo $donnees['Site Internet']; ?><br />
Activite:<?php echo $donnees['Activité']; ?><br />
Adresse :<?php echo $donnees['Adresse']; ?> <br />
Code.Postal:<?php echo $donnees['Code.Postal']; ?><br />
Ville : <?php echo $donnees['Ville']; ?><br />
Tel.n°1 <?php echo $donnees['Tel.n°1']; ?><br />
Tel.n°2<?php echo $donnees['Tel.n°2']; ?><br />
Fax :<?php echo $donnees['Fax']; ?><br />
Mobile :<?php echo $donnees['Mobile']; ?><br />
</p>
<?php
}
mysql_close();
?>
<p><strong><?php echo $donnees['societe']; ?></strong> :
Je vous laisse la structure de ma base de donnée pour vous aidez
CREATE TABLE IF NOT EXISTS `*******` (
`Société` text NOT NULL,
`Email` text NOT NULL,
`Site Internet` text NOT NULL,
`Activité` text NOT NULL,
`Adresse` text NOT NULL,
`Code.Postal` text NOT NULL,
`Ville` text NOT NULL,
`Tel.n°1` text NOT NULL,
`Tel.n°2` text NOT NULL,
`Fax` text NOT NULL,
`Mobile` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Vous l'aurez compris mon problème vient du fait que je doit faire une requête multiple puisque le programme doit avec une seul champs de requête effectué plusieurs contrôle dans différente catégorie de ma table
en fait j essaie de faire exactement ce que fait
www.pagesjaunes.fr mais juste dans mon groupe.
En vous remerciant par avance
Jeff83fr
Bonjour,
j'ai un problème de récupération a ma base de donné, je m explique, je travaille dans un grand groupe et je souhaiterai faire un annuaire de tous le personnel et de toutes les société et personne présente dans le groupe, je souhaiterai donc faire une page un peu comme les pages jaunes avec un champs qui/quoi et un champs ou.
Je vous laisse mon programme en php, si vous pourriez me donnez la solution je vous en serrez tres reconnaissant, en vous remerciant par avance.
voici mon programme :
[php]
<form action="traitement.php" method="post">
<br /> Recherche rapide :</h1>
<form method="post" action="traitement.php">
<p>
<label for="qui" style="FONT-SIZE: 25pt;" >Qui?Quoi?ex:Artisan,Restaurant,Commerce...</label>
<input type="text" style="FONT-SIZE: 25pt;" name="qui" id="qui" value="" size="60" maxlength="20" />
<label for="ou" style="FONT-SIZE: 25pt;" >Ou?ex:ville,code postal,adresse.</label>
<input type="text" style="FONT-SIZE: 25pt;" name="ou" id="ou" value="" size="60" maxlength="20" />
</p>
<input name="submit" type="image" img src="pic/deco/resultat.png" id="submit">
</form>
<?php
// Maintenant on doit récupérer les 10 dernières entrées de la table
// On se connecte d'abord à MySQL :
mysql_connect("*****", "*****","******"); // Connexion à MySQL
mysql_select_db("********"); // Sélection de la base varpro
$qui = htmlspecialchars ($_POST['qui']);
$ou = htmlspecialchars ($_POST['ou']);
$reponse = mysql_query("SELECT CONCAT(Société,Activité) FROM varpro WHERE Activité Like '%$qui%'");
UNION
$reponse2 = mysql_query("SELECT CONCAT(Adresse,Code.Postal) FROM varpro WHERE Code.Postal Like '%$ou%'");
while ($donnees = mysql_fetch_array($reponse)
while ($donnees2 = mysql_fetch_array ($reponse2) )
{
?>
<p>
<strong>requete</strong> : <?php echo $donnees['Société']; ?><br />
<strong>Société</strong> : <?php echo $donnees2['Code.Postal']; ?><br />
Email :<?php echo $donnees['Email']; ?><br />
Site Internet:<?php echo $donnees['Site Internet']; ?><br />
Activite:<?php echo $donnees['Activité']; ?><br />
Adresse :<?php echo $donnees['Adresse']; ?> <br />
Code.Postal:<?php echo $donnees['Code.Postal']; ?><br />
Ville : <?php echo $donnees['Ville']; ?><br />
Tel.n°1 <?php echo $donnees['Tel.n°1']; ?><br />
Tel.n°2<?php echo $donnees['Tel.n°2']; ?><br />
Fax :<?php echo $donnees['Fax']; ?><br />
Mobile :<?php echo $donnees['Mobile']; ?><br />
</p>
<?php
}
mysql_close();
?>
<p><strong><?php echo $donnees['societe']; ?></strong> :
[/php]
Je vous laisse la structure de ma base de donnée pour vous aidez
[sql]
CREATE TABLE IF NOT EXISTS `*******` (
`Société` text NOT NULL,
`Email` text NOT NULL,
`Site Internet` text NOT NULL,
`Activité` text NOT NULL,
`Adresse` text NOT NULL,
`Code.Postal` text NOT NULL,
`Ville` text NOT NULL,
`Tel.n°1` text NOT NULL,
`Tel.n°2` text NOT NULL,
`Fax` text NOT NULL,
`Mobile` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
[/sql]
Vous l'aurez compris mon problème vient du fait que je doit faire une requête multiple puisque le programme doit avec une seul champs de requête effectué plusieurs contrôle dans différente catégorie de ma table
en fait j essaie de faire exactement ce que fait www.pagesjaunes.fr mais juste dans mon groupe.
En vous remerciant par avance
Jeff83fr