Iframe en PHP [Résolu]

Signaler
Messages postés
270
Date d'inscription
mardi 17 décembre 2002
Statut
Membre
Dernière intervention
4 avril 2019
-
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
-
Bonjour,

Voilà je suis vraiment très débutant en PHP venant d'un monde plutôt gros système.
J'ai un soucis j'aimerais savoir si quelqu'un à la solution si possible me là donner avec un exemple simple.

J'ai une page HTML ou j'ai un petit formulaire ou l'utilisateur doit saisir un mot pour une recherche.
Lorsqu'il cliquer sur le bouton pour lancer la méthode "POST" du formulaire j'appel
à ce moment là une page PHP qui lancer une requête SQL et me renvois la liste des clients trouvés par rapport au mot clé de recherche saisi dans le formulaire.

Je voudrais simplement qu'il affiche le contenu dans une IFRAME que j'ai dans ma page HTML de départ.
Putain ça doit pas être compliquer de faire ça ? J'ai essayer de mettre le paramètre
target='maIFRAME' rien à faire !

Un grand MERCI d'avance pour une réponse rapide.

Tolt

19 réponses

Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
ta requete marche ? je veux dire
il affiche les resultats sur une page entiere et ça ecrase ton frameset ?
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Bah fais voir tes codes, ça aidera à y voir plus clair.
Messages postés
270
Date d'inscription
mardi 17 décembre 2002
Statut
Membre
Dernière intervention
4 avril 2019

Oui elle marche mais elle ouvre une autre page.
Moi je veux qu'elle mettre le résultat dans la IFRAME de la même page
HTML ou ce trouve le formulaire.

tolt
Messages postés
270
Date d'inscription
mardi 17 décembre 2002
Statut
Membre
Dernière intervention
4 avril 2019

PAGE HTML
<html>


<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>Nouvelle page 1</title>
</head>





<center>
<table border="0" cellpadding="0" cellspacing="0" width="100%" height="442">
----, </td>
,
,
,
&nbsp;&nbsp;,
,
,
,
,
,

----

,
,
,
,
&nbsp;&nbsp;,
,
,
,
,
,

----

,
,
,
,
&nbsp;&nbsp;,
,
,
,
,
,

----

,
,
,
,
&nbsp;&nbsp;,
,
,
,
,
,

----

,
,
,
,
&nbsp;&nbsp;,
,
,
,
,
,

----

,
,
,
,
&nbsp;&nbsp;,
,
,
,
,
,

----

,
,
,
,
&nbsp;&nbsp;,
,
,
,
,
,

----

,
,
,
,
&nbsp;&nbsp;,
,
,
,
,
,

----

,
,
,
,
<FORM ACTION="test.php" METHOD=POST NAME="nomduformulaire">

Recherche: Valider

Tout Début

</FORM>

</td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="38"></td>
<td width="33" height="38"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="686" height="21"></td>
<td width="33" height="21"></td>
</tr>
<tr>
<td width="6" height="21"></td>
<td width="686" height="21"></td>
<td width="33" height="21"></td>
</tr>
</table>
</center>




PAGE PHP QUI DOIT REMPLIR LA IFRAME DE LA PGA HTML

<HTML>
<HEAD>
<TITLE>Mon fichier Adresses</TITLE>
</HEAD>




<?php


require('./config.php');


$wscan = $_POST['wchaine'];
$wvalur = $_POST['R1'];


if ($wvalur=="V1") {
$wscan= "%" . $wscan . "%";
}
else {
$wscan= "" . $wscan . "%";
}


$query="select numecl, namecl, prencl, nedicl, cl from zx_sesame.clientl1 where lcase(namecl) like '" . $wscan . "'" ;
$result=odbc_do($connection, $query);


// Entete de colonnes


echo '';

//print(\"<TABLE BORDER=\\"o\\">\n\");
print(\"----
\n\");
print(\", \n\");
print(\"N°, \n\");
print(\"Nom, \n\");
print(\"Prénom, \n\");

print(\"\n\");

// Chargement du tableua
$couleur =\"1\";
while(odbc_fetch_row($result))
{
$tform=odbc_result($result, 1);
$tlieu=odbc_result($result, 2);
$tfour=odbc_result($result, 3);
$tpointeur=odbc_result($result, 5);

print(\"----
\n\");
print(\"&nbsp");
echo 'http://srvphp001/smeg/clic.php?select=' . $tpointeur . ".nsf" . '" target="_blank">';

if ($couleur=="1") {
$couleur ="2";
print(", &nbsp;$tform</TD>\n\");
print(\"&nbsp;$tlieu, \n\");
print(\"&nbsp;$tfour, \n\");
}
else {
$couleur =\"1\";
print(\"&nbsp;$tform, \n\");
print(\"&nbsp;$tlieu, \n\");
print(\"&nbsp;$tfour, \n\");
}
print(\"\n\");
}

print("
\n");
odbc_close_all();
?>

</HTML>



tolt
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Ah...y a incompréhension du fonctionnement de php là.

Ce que tu devrais faire...:
tu as ta page avec ton formulaire. Une iframe dedans.
Cette iframe est une page php qui va traiter le formulaire (donc le formulaire doit avoir comme action le nom de la page le traitant...donc, celui de ton iframe).
Ton code php traite le formulaire, et génère le html à afficher en fonction de ce traitement.
Messages postés
270
Date d'inscription
mardi 17 décembre 2002
Statut
Membre
Dernière intervention
4 avril 2019

Je part d'une page HTML ou j'ai un formuliare ou je rentre un mot pour une recherhe.
Dans cette page un peu plus bas j'ai une IFRAME.

Lorsque l'utilisateur clic sur le bouton du formulaire de la page HTML il appel une page PHP qui j'aimerais me replisse la IFRAME de la page HTML qui existe déjà.
Putain si on peu pas faire ça en PHP j'arrête (Un truc aussi simple)

Mais je le dit je suis débutant dans ce langage !

tolt
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
essaie avec un attribut target='taframe' dans la balise form
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
Si vous travaillez avec des cadres (frames) et que dans un cadre vous avez un formulaire; vous désirez qu'après l'envoi de ce formulaire la réponse du serveur (par exemple le tirage d'un script CGI) soit affichée dans un autre cadre vous pouvez mentionner la fenêtre cible pour la réponse du serveur.


Exemple:

<form action="/cgi-bin/evalue.pl" method="get" target="Donnees">
<!-- ici suivent les éléments du formulaire -->
</form>
Messages postés
270
Date d'inscription
mardi 17 décembre 2002
Statut
Membre
Dernière intervention
4 avril 2019

ça ne marche pas commeje l'ai déjà dit
tolt
Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
<FORM ACTION="test.php" METHOD=POST NAME="nomduformulaire">

ah mais je ne vois d'attribut target là
Messages postés
270
Date d'inscription
mardi 17 décembre 2002
Statut
Membre
Dernière intervention
4 avril 2019

J'ai essayer ça ne marche pas.
J'avais mis target avant mais il ouvre aussi une autre page.
Putain en VB j'en aurait pour 5 minutes.Un problème aussi simple.

tolt
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Bon... :

page formulaire :
<form method="post" action="trait.php" target="myFrame">

</form>

source frame :

<-- par exemple... ->

trait.php :
<?php
if (isset ($_POST['submit']) && $_POST['submit'] === 'ok') {
echo $_POST['test'];
}
?>
Messages postés
270
Date d'inscription
mardi 17 décembre 2002
Statut
Membre
Dernière intervention
4 avril 2019

Ah enfin une réponse que me semble pas mal ! MERCI
Ecoutez j'essai lundi car là je dois partir du bureau j'ai mon train !
Merci beaucoup et je vous informe dès lundi.

Bon week

tolt
Messages postés
270
Date d'inscription
mardi 17 décembre 2002
Statut
Membre
Dernière intervention
4 avril 2019

Bonjour,

Juste un petit mot pour vous dire que ça marche bien et suite à votre réponse et exemple de code.
Je sais pas si j'utilise la bonne méthode pour ma page "IFRAME" mais si vous aviez un conseil,
il est le bien venu.
MERCI beaucoup et bonne semaine.
tolt
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Disons simplement que personnellement, je n'utiliserais pas d'Iframe, ces dernières n'étant plus valides W3C; je ferais tout dans la même page, et affic herait mon contenu dans une div par exemple.
Messages postés
270
Date d'inscription
mardi 17 décembre 2002
Statut
Membre
Dernière intervention
4 avril 2019

Oui mais à chaque fois vous rechargez la page entière ?

tolt
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Pas nécessairement, mais en l'occurence pour faire simple, oui.
Messages postés
270
Date d'inscription
mardi 17 décembre 2002
Statut
Membre
Dernière intervention
4 avril 2019

Auriez-vous un petit exemple ?
Encore uen fois je débute en PHP et j'aimerais si possible prendre les bonnes habitudes.
Merci.

tolt
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Ce serait un peu long. TU peux utiliser les requêtes XMLHTTP (Ajax) pour ne raffraichir QUE ce qui t'intéresse.
Mais un exemple ici serait un peu long, je te conseille plutôt d'aller voir des tutos, il y en a plein sur le net, ou des sources les utilisant (il y en a plein sur ce site :-) ).

Ceci dit, personnellement, je n'utilise ceci que dans des cas bien précis, si vraiment cela ajoute quelque chose.
Généralement, je me contente de raffraichir toute ma page.