Partage
  • Partager sur Facebook
  • Partager sur Twitter

[PB]Shadowbox n'affiche pas le code...

    24 juillet 2009 à 17:01:20

    Bonjour tout le monde,

    Alors voila, je viens de découvrir shadowbox.
    Après quelques essais concluant, je décide de l'intégré dans le site pour mon stage d'été...

    Et j'ai un petit (gros :p ) soucis.
    A savoir que dans un formulaire d'entré de contact (qui s'affiche sans soucis dans un shadowbox), j'ai réaliser une petite fonction php qui permet de choisir la ville selon le code postal entré (parce que plusieurs villes possible pour un même code postal, je vous passe les détails).
    Le choix des villes se fait dans une nouvelle fenetre popup.

    Les villes s'affichent très bien sous safari.

    Alors que sous firefox elles s'affichent une fraction de seconde et est immédiatement remplacé par une page vide de la couleur choisit dans le css de shadowbox.
    J'ai vérifier le code source de la fenetre, celui ci comporte comme code ceci:

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title></title>
    </head>
    <body>
    </body>
    </html>
    


    Ce qui semble normal vu que la page est vide... Mais bon sous safari tout cela fonctionne parfaitement... Donc je suis un peu perdu :D
    Si j'appelle la page, sans passer par shadowbox, cela fonctionne correctement.
    A noter aussi que j'ai la fonction inverse (choisir le code postal en fonction de la ville) ,basée exactement sur la même base de code, qui s'affiche très bien.


    Si vous avez une solution, j'en serais très heureux!

    Merci d'avance, et bonne journée
    • Partager sur Facebook
    • Partager sur Twitter
      24 juillet 2009 à 17:26:07

      Le code de ton site ou un lien stp.
      • Partager sur Facebook
      • Partager sur Twitter
        24 juillet 2009 à 17:46:56

        Alors voila le code qui affiche les villes (celui qui devrait s'afficher)

        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
        	"http://www.w3c.org/TR/xhtml11//DTD/xhtlm11.dtd">
        
        <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <?php
        	include("include/connex.inc.php");
        	connex("entreprise");
        ?>
        
        
        <title>Choix d'une ville</title>
        
        <script type="text/javascript">
        function afficheVille(ville) {
        	
        	parent.document.getElementById('ville').value = ville;
        	parent.Shadowbox.close();
        }
        
        </script>
        </head>
        <body>
        <?php
        //test de l'arrivée du code postal
        
        if(!isset($_GET['codepostal']))
        {
        	echo "<script type=text/javascript>";
        	echo "alert('Le code postal ne passe pas...') </script>";
        }
        else
        {
        	//on sécurise le code postal
        	$codepostal = $_GET['codepostal'];
        	
        	//requête pour appeler les différentes villes
        	$requete = "SELECT nom FROM ville_cp WHERE cp = ".$codepostal."";
        	$return =@ mysql_query($requete);
        	while($donnees =mysql_fetch_array($return))
        	{
        		echo ("<p onclick=\"afficheVille('".$donnees['nom']."')\">".$donnees['nom']."</p>");
        	}
        }
        ?>
        </body>
        </html>
        


        Et là, la partie du code du formulaire qui appelle le choix des villes:


        <script type="text/javascript" src="include/jquery.js"></script>
        <script type="text/javascript" src="include/shadowbox/shadowbox.js"></script>
        
        <script type="text/javascript">
        Shadowbox.init({
            language:   "en",
            players:    ["html", "iframe", "img"]
        });
        
        </script>
        <script type="text/javascript">
        	function afficheVille(size, cp) 
        	{
            	if (cp.length > size-1) 
            	{
          		$.ajax
          		({ 
        			type: "GET", 
        			url: "verif_cp.php?cp="+cp, 
        			success:function(data)
        			{ 
        			if(data==0) 
        			{ 
        				alert('Aucun resultat, modifier le code postal'); 
        			} 
        			else if(data==1)
        			{ 
        			Shadowbox.open
        			({
        	 			player:     "iframe",
        	 			content:    'choix_ville.php?codepostal='+cp,
                			title:      "Villes disponiblent pour "+cp,
                			height:     350,
                			width:      350
                		});
        			}
        			else
        			{
        				document.getElementById('ville').value = data;
            			}
                        } 
        		}); 
                        }
        }
        
        </script>
        
        .
        .
        .
        
        <p>
        	<label for="cp">CP:</label>
        	<input type="text" value="" name="cp" id="cp" maxlength="5" size="5" onKeyUp="afficheVille(this.size, this.value)" />	
        </p>
        
        .
        .
        .
        



        Voila, merci d'avance :)


        edit: encore une petite chose, si je rajoute un

        alert (cp);
        


        avant l'appelle de shadowbox, tout fonctionne correctement...
        • Partager sur Facebook
        • Partager sur Twitter
          25 juillet 2009 à 18:49:07

          C'est bizarre tout ça... Aurais-tu un lien vers la page online stp ?
          • Partager sur Facebook
          • Partager sur Twitter
            30 juillet 2009 à 15:47:48

            Bonjour,
            Alors voila j'ai mis en ligne mon petit bout de site: ici
            Il suffit de cliquer sur ajouter un contact pour voir le formulaire s'afficher.

            J'ai réinstallé firefox ca ne change rien, je comprend toujours pas ce qu'il se passe...

            ps: Il faut taper un code postal avec plusieurs villes possibles pour voir une seconde fenetre popup s'afficher

            Merci d'avance :D
            • Partager sur Facebook
            • Partager sur Twitter
              30 juillet 2009 à 17:17:38

              Quand je tape un code postal, ça met ça dans le champ en dessous ^^

              <br /> <b>Warning</b>:  mysql_query() [<a href='function.mysql-query'>function.mysql-query</a>]: A link to the server could not be established in <b>/mnt/142/sdb/f/7/franbreton/site/verif_cp.php</b> on line <b>17</b><br /> <br /> <b>Warning</b>:  mysql_num_rows(): supplied argument is not a valid MySQL result resource in <b>/mnt/142/sdb/f/7/franbreton/site/verif_cp.php</b> on line <b>18</b><br /> <br /> <b>Warning</b>:  mysql_fetch_array(): supplied argument is not a valid MySQL result resource in <b>/mnt/142/sdb/f/7/franbreton/site/verif_cp.php</b> on line <b>19</b><br /> 0
              • Partager sur Facebook
              • Partager sur Twitter
                30 juillet 2009 à 17:52:54

                Ooopppps, désolé petite erreur de ma part.

                Maintenant cela devrait fonctionner... presque bien :D
                • Partager sur Facebook
                • Partager sur Twitter
                  30 juillet 2009 à 18:00:11

                  Chez moi tout fonctionne du feu de dieu... :D Même la sélection des villes.

                  Sous Firefox 3.5.1
                  • Partager sur Facebook
                  • Partager sur Twitter
                    30 juillet 2009 à 18:02:18

                    Problème venant des firefox sous mac alors, j'ai testé avec mon mac book pro et avec un imac, même soucis.

                    Sous Firefox 3.5.1 aussi.
                    • Partager sur Facebook
                    • Partager sur Twitter
                      30 juillet 2009 à 18:05:27

                      Avis aux possesseurs d'un mac, donc...
                      • Partager sur Facebook
                      • Partager sur Twitter
                        30 juillet 2009 à 20:22:50

                        T'a du mettre une , à la place d'un ; ou un truc du genre si le alert y fait marcher...
                        T'as essayé try{}catch(e){} ?
                        • Partager sur Facebook
                        • Partager sur Twitter
                          30 juillet 2009 à 21:44:26

                          Le try cache ne donne pas d'erreur.

                          Pour le ; je pense pas, parce que l'autre fonction pour afficher le code postal fonctionne parfaitement et c'est la même syntaxe.
                          • Partager sur Facebook
                          • Partager sur Twitter

                          [PB]Shadowbox n'affiche pas le code...

                          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                          • Editeur
                          • Markdown