[PHP] resultat dans une nouvelle page

Résolu/Fermé
AzRaElDGT Messages postés 57 Date d'inscription mercredi 25 juillet 2007 Statut Membre Dernière intervention 25 octobre 2008 - 25 juil. 2007 à 18:45
 Grune - 16 déc. 2008 à 14:16
Bon voila j'ai un probleme...

J'suis sur que la solution est pas tres compliqué mais je galere...

<style type="text/css">
.Style2 {
	color: #009900;
	font-weight: bold;
	font-style: italic;
	font-size: 36px;
}
</style>
<?
$nom = $_POST['nom'];
$champ1 = "ville";
$prenom = $_POST['prenom'];
$champ2 = "type";
$age = $_POST['age'];
$champ3 = "prix";

if($_POST['et_ou1'] == 'AND')
{ 
 if(empty($_POST['nom']))      
 {
 $nom = 1;
 $champ1 = 1;
 }
}
else
{
 if(empty($_POST['nom']))      
 {
 $nom = 1;
 $champ1 = 2;
 }
}

if($_POST['et_ou1'] == 'AND')
{ 
 if(empty($_POST['prenom']))      
 {
  $prenom = 1;
  $champ2 = 1;
 }
}
else
{
 if(empty($_POST['prenom']))      
 {
  $prenom = 1;
  $champ2 = 2;
 }
}

if($_POST['et_ou2'] == 'AND')
{ 
 if(empty($_POST['age']))      
 {
  $age = 1;
  $champ3 = 1;
 }
}
else
{
 if(empty($_POST['age']))      
 {
  $age = 1;
  $champ3 = 2;
 }
}

$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'urbat';
$tables = 'appartement';

// connection à la DB
mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());



$select = "SELECT * FROM $tables WHERE $champ1 = '$nom' ".$_POST["et_ou1"]." $champ2 = '$prenom' ".$_POST["et_ou2"]." $champ3 = $age";

if($nom=="" AND $prenom=="" AND $age=="")
echo 'Vous devez preciser en moins un critére de recherche !!';
else
{
$result = mysql_query($select) or die ('Erreur : '.mysql_error());
$total = mysql_num_rows($result);

if($total) 
{


 echo "<table width=\"435\" border=\"1\" cellpadding=\"0\" cellspacing=\"0\">
  <!--DWLayoutTable-->";
  echo "<tr>
    <td valign=\"top\" bgcolor=\"#6699FF\"><b>Lot</b> </td>
	<td valign=\"top\" bgcolor=\"#6699FF\"><b>Ville</b> </td>
    <td valign=\"top\" bgcolor=\"#6699FF\"><b>Type</b> </td>
    <td valign=\"top\" bgcolor=\"#6699FF\"><b>Prix</b> </td>
    <td valign=\"top\" bgcolor=\"#6699FF\"><b>Terrasse</b> </td>
    <td valign=\"top\" bgcolor=\"#6699FF\"><b>Expo</b> </td>
	</tr>";

  while($row = mysql_fetch_array($result)) 
  {
echo '<td valign="top"><b><a href="fiche.html?lot='.$row['lot'].'">'.$row['lot'].' </a></b></td>
    <td valign="top">'.$row['ville'].' </td>
    <td valign="top">'.$row['type'].' </td>
    <td valign="top">'.$row['prix'].' </td>
    <td valign="top">'.$row['terrasse'].' </td>
    <td valign="top">'.$row['expo'].' </td>
	</tr>';
  }
echo '</table>';
}
else echo '<div align="center"><span class="Style1">Aucun résulat ne corresponds à votre recherche !!... </span>
</div>';

mysql_free_result($result);
mysql_close();
}
?>


Le probleme vien de cette partie:

if($total) 
{


 echo "<table width=\"435\" border=\"1\" cellpadding=\"0\" cellspacing=\"0\">
  <!--DWLayoutTable-->";
  echo "<tr>
    <td valign=\"top\" bgcolor=\"#6699FF\"><b>Lot</b> </td>
	<td valign=\"top\" bgcolor=\"#6699FF\"><b>Ville</b> </td>
    <td valign=\"top\" bgcolor=\"#6699FF\"><b>Type</b> </td>
    <td valign=\"top\" bgcolor=\"#6699FF\"><b>Prix</b> </td>
    <td valign=\"top\" bgcolor=\"#6699FF\"><b>Terrasse</b> </td>
    <td valign=\"top\" bgcolor=\"#6699FF\"><b>Expo</b> </td>
	</tr>";

  while($row = mysql_fetch_array($result)) 
  {
echo '<td valign="top"><b><a href="fiche.html?lot='.$row['lot'].'">'.$row['lot'].' </a></b></td>
    <td valign="top">'.$row['ville'].' </td>
    <td valign="top">'.$row['type'].' </td>
    <td valign="top">'.$row['prix'].' </td>
    <td valign="top">'.$row['terrasse'].' </td>
    <td valign="top">'.$row['expo'].' </td>
	</tr>';
  }
echo '</table>';
}
else echo '<div align="center"><span class="Style1">Aucun résulat ne corresponds à votre recherche !!... </span>
</div>';


Le resultat de ma requete s'affiche donc sous forme de tableau, mais dans la meme page... Je voudrais que le tableau s'affiche dans un nouvelle page genre (_blank) ou autre mais je n'y arrive pas

merci de votre aide
A voir également:

8 réponses

AzRaElDGT Messages postés 57 Date d'inscription mercredi 25 juillet 2007 Statut Membre Dernière intervention 25 octobre 2008 2
26 juil. 2007 à 00:54
Ca marche pas mais j'ai trouvé la solution donc je vais vous en faire profiter:

<script language="javascript" type="text/javascript">
function pop_it(the_form) {
   my_form = eval(the_form)
   window.open("rech4.php", "popup", "height=440,width=470,menubar='no',toolbar='no',location='no',status='no',scrollbars='yes'");
   my_form.target = "popup";
   my_form.submit();
}
</script>


puis, on donne un nom au formulaire dans ce cas c'est "rech"

<form name="rech" action="rech4.php" method="post" target="_blank">


puis, sur le bouton on excute le scripte sur onclick:

<input name="rechercher" type="submit" id="envoyer" value="Rechercher" onclick="pop_it(rech);"/>


Merci de ton aide fiddy tu m'as bien avancé ;)

Az
1
Je suis tombé sur cette page alors que j'avais le même soucis, donc je voulais juste dire merci pour la réponse, qui marche très bien :)
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
25 juil. 2007 à 19:02
Salut

Tu veux que la deuxième partie s'affiche dans une autre page ? Mais alors que fait la page avec la première partie ?? Je comprends pas bien où tu veux en venir.
Donne un exemple concret, par exemple : première page doit afficher ... et deuxième page doit afficher...

Merci d'être plus précis.

Cordialement
0
AzRaElDGT Messages postés 57 Date d'inscription mercredi 25 juillet 2007 Statut Membre Dernière intervention 25 octobre 2008 2
25 juil. 2007 à 19:12
En faite la premiere partie constitue la requette en fonction des criteres choisis ce qui m'interesserais ce que le resultat de cette requete donc le tableau, s'affiche sur une autre page.

Mais pour pour plus de compréntion il y a 2 fichiers un fichier html qui est le formulaire de recherche et un fichier php (celui ci) qui est le resultat de cette recherche.
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
25 juil. 2007 à 20:00
Salut

Ok, j'ai mieux compris, enfin je pense.
Donc ton formulaire, tu l'envoies sur ta page php qui elle va récupérer les variables via _POST[' ']

<form method="post" action="traitement.php">
...
</form>

et tu auras une nouvelle page traitement.php qui s'ouvrira.

J'espère avoir répondu à ta question.

Cordialement
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
AzRaElDGT Messages postés 57 Date d'inscription mercredi 25 juillet 2007 Statut Membre Dernière intervention 25 octobre 2008 2
25 juil. 2007 à 22:45
Parfait j'ai chercher un peu grace a ce que tu m'as ecris et j'ai trouver la solution qui donne ca:

<form action="rech4.php" method="post" target="_blank">
...
</form>


Mais j'ai un autre petit probleme cette page s'affiche en pleinne page et j'aimerais qu'elle s'affiche sous forme de popup.

Quelqu'un a une idée?
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
25 juil. 2007 à 23:03
Re

Ce code devrait répondre à ta question :


<html>
<head>

<script language="javascript">
function popup()
{
window.open('nom_page.html','titre','height=50,width=50,top=50,left=50,resizable=no');
}
</script>
</head>

<body onLoad="popup();">

...

</body>


</html>



Bonne chance
0
AzRaElDGT Messages postés 57 Date d'inscription mercredi 25 juillet 2007 Statut Membre Dernière intervention 25 octobre 2008 2
25 juil. 2007 à 23:54
Ahh c'est ce que je cherche en effet mais j'aurais besoin d'introduire le scripte a ce niveau mais je sais pas comment l'ecrire...

<form action="rech4.php" method="post" target="_blank">


Il faudrait que je remplace le script par "rech4.php"

<form action="popup();" method="post" target="_blank">


Mais ca ne marche pas...
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
25 juil. 2007 à 23:57
Essaie :
<form action="Javascript:popup();" method="post" target="_blank">


Je te promets rien.
0