**Fermeture de page, passer variable PHP**

Signaler
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009
-
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009
-
Bonjour,

j'ouvre un popup via un formulaire.
Ce popup contient le résultat d'un select sur ma bdd.
J'ai la possibilité de cocher une ou plusieurs checkbox. j'envoie ensuite dans une variable que l'on appelera $test les numéros de mes cases cochées.
Mon soucis est que je n'arrive pas a envoyer ce fameux résultat sur la page "mère" du popup.

Voici mon code, est ce que qq'un peut m'aider please???????

.';">

Merci d'avance!!!

12 réponses

Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
5
Hello, dans ton pop-up, une fois que tu as validé ton formulaire, tu mets une fonction onload qui communique le résultat à la fenêtre mère (window.parent). C'est pas onunload qui doit faire ça.

Tu sais qu'il y a aussi Ajax pour valider des formulaires sans recharger la page ?
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

Salut et merci,

pour ce qui est d'ajax, j'ai vaguement vu mais je ne sais pas du tout comment utiliser ce language.
Tu crois que je me plante sur e onunload? Parce que c'est lorsque je ferme mon popup que j'envoie ma valeur dans la case du formulaire de la page mère.

Mais déjà, je n'ai pas la bonne syntaxe apparemment, je n'arrive pas à trouver la bonne car si j'enlève les balises php et que je mets une valeur bidon, ca me l'affiche bien dans mon formulaire. Par contre, dès que je mets les balises php pour passer ma variable $toto, plus rien, à cause apparemment de la syntaxe....
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

Re,

ce que je viens de faire, c'est d'attribuer le window.opener...etc à l'évènement onclick lorsque je valide mon popup.
Mais ca me pose un autre problème car avant de faire ça, je faisais un window.close àl'évènement onclick....maintenant, je ne sais pas comment fermer mon popup apres avoir validé......
Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
5
Non, ferme la popup dans le window.onload après avoir validé le formulaire.

Pour trouver ton erreur en php, mets le display error à All dans le php.ini.
à+
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

Salut,

non, si je mets le window.close() dans le onload, ca me ferme le popup dès son ouverture.

Ce qu'il me faut donc, c'est remonter les numéros des cases cochées.
Mon soucis est que ca ne m'incrémente aucune valeur sur ma page mère avec le code suivant :


 




<form name="Ajout_fiche_amont" action="Ajout_fiche.php" method="POST">
<?php


include('../Config.php');
$base = "toto";


//Connexion à la base de données


 $db = mysql_connect($host,$user,$password) or die("Impossible de se connecter");
 
 if (!mysql_select_db( "$base",$db))
 
  echo "Erreur  : impossible de sélectionner la base
";
  
$sql = "SELECT * FROM recapWHERE type_fiche='Fiche2'";
   
 $req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());


 
 
    // début du tableau
    echo ''.\"\n\";
        echo '----
';
  echo ', ';
        echo 'Num&eacute;ro, ';
        echo 'Description, ';
  echo ''.\"\n\";
  
  // lecture et affichage des résultats sur les colonnes, 1 résultat par ligne.   
 
    while($row = mysql_fetch_array($req))
 {
     echo '----
';
  echo ''?>"><?', ';
        echo ''.$row['numero'].', ';
        echo '' .substr ( $row['description'] ,0,100 ).' (...), ';
     echo ''.\"\n\"; 
    }
    echo '
'."\n";
    // fin du tableau.

?>



<tr>
    <td height="26" colspan="8" align="center" valign="middle">
      ';"> 
Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
5
tu auras traité le formulaire et renvoyé les infos à la fenêtre mère avant le onload...
réfléchis bien, tu as toutes les clés nécessaires opur résoudre le pb.
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

Merci,

mais ce que je n'arrive pas à comprendre, c'est que si je remplace le code php attribué au onclick par une valeur lambda, ca fonctionne correctement. Apparemment, ce qui pose problème est ce bout de code php (syntaxe ou autre soucis) non?

code qui fonctionne : 

 

Ca ne marche pas lorsque je laisse mon code php dans value=...
Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
5
Du php dans la page web envoyé au visiteur ? mais bien sûr...
franchement, lis des tutoriels pour réapprendre les bases php et javascript, ça ira mieux.
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

Merci.

C'est bien ce qu'il m'avait semblé voir, mais bon, je voudrais savoir comment faire autrement..?
Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
5
comment ça faire autrement ???
relis calmement ce que j'ai expliqué et dis ce que tu n'as pas compris ! parce que là je t'explique comment faire et tu fais la sourde oreille à vouloir garder ta méthode bancale...
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

Bon, je regarde ça tranquillement et je reviens vers toi.

Merci encore!
Messages postés
528
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
6 mars 2009

Salut,

j'ai enfin réussi à me dégager un peu de temps pour me replonger sur ce soucis...

Je suis maintenant arrivé à ceci, qui parait beaucoup mieux :

Par contre, c'est maintenant la remontée de la valeur de la checkbox qui n'est pas au point...?

Si qq'un peut m'aider??

Merci beaucoup!!!!

CODE :

';" onunload= "window.close();">

Voici mon tableau de checkbox :
 
 $nbCase = 0;
 while($row = mysql_fetch_array($req))
{
  echo '<tr>';
  echo '<td align="center" bgcolor="#FFFFFF" width="50">'?>" value="<?$row['numero']?>"><?'</td>';
  echo '<td align="center" bgcolor="#FFFFFF" width="50">'.$row['numero'].'</td>';
  echo '<td align="center" bgcolor="#FFFFFF">' .substr ( $row['description'] ,0,100 ).' (...)</td>';
  echo '</tr>'."\n";
 
  $nbCase++;
}


echo "";