IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Fonction Javascript en PHP


Sujet :

Langage PHP

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    432
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 432
    Par défaut Fonction Javascript en PHP
    Bonjour,
    Je ne sais si c'est bien ici que je dois poster ma demande ou dans la section javascript.
    Je vais faire cour j'ai creer une fonction JS pour rendre dynamique un menu, j'ai eu besoin d'automatiser mon menu avec des table et des boucles. Je dois donc automatiser ma fonction JS mais je ne veux pas utiliser le xml, alors je pensais ecrire la fonction dans un echo comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    echo " <script> 
    		alert('Coucou');
    		document.location.href'acceuil.php'
    		</script>";
    Voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    <?php
    	include("connect_bdd\connection_BDD.php");
     
    	$rzq = "SELECT * FROM type";
    	$rzp = mysql_query($rzq);
    	$rzs = mysql_num_rows($rzp);
     
    	echo "<script>
    			function $(leId)
    			{
    				return document.getElementById(leId);
    			}
    	
    			function deroulant(selection)
    			{
    				switch(selection)
    				{
    	";
     
    	$roq = "SELECT * FROM type";
    	$rop = mysql_query($roq);
     
    	$num=0;
    	while($ros=mysql_fetch_assoc($rop))
    	{
    		$num++;
    		echo "case\"menu_".$ros['LIBELLE_TYPE']."\":";
    		for($i=1;$i<=$rzs;$i++)
    		{
    			if($i = $num)
    			{$monDisplay = "block"; }
    			else
    			{$monDisplay = "none"; }
     
    			echo "$('sous_menu_".$ros['LIBELLE_TYPE']."').style.display = \"".$monDisplay."\" ; ";
    		}
    		echo "break;";
    	}
    	echo "		}
    			} 
    		</script>
    	";
    ?>
    Il dois y avoir une erreur de syntaxe quelque part mais je ne voit pas ou.
    Merci d'avance pour les lumières que vous m'apporterez.

  2. #2
    Membre Expert
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 149
    Par défaut
    La coloration syntaxique ne montre rien.
    Que donnes la console JS au niveau des erreurs ?

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    432
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 432
    Par défaut
    Bonjour,

    heu qu'entendez vous par "la console JS au niveau des erreurs ?"

    Je suis sur firefox, avec firebug si c'est se que vous voulez savoir. Pas d'erreur apparente.

    j'ai modifier ceci :
    Ma page s'affiche a présent et me donne ceci comme code JS:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    <script>
    function $(leId)
    {
    	return document.getElementById(leId);
    }
    function deroulant(selection)
    {
    	switch(selection)
    	{
    		case"menu_Musique":
    			$('sous_menu_Musique').style.display = "block" ; 
    			$('sous_menu_Musique').style.display = "none" ; 
    			$('sous_menu_Musique').style.display = "none" ; 
    			break;
    		case"menu_DVD":
    			$('sous_menu_DVD').style.display = "none" ; 
    			$('sous_menu_DVD').style.display = "block" ; 
    			$('sous_menu_DVD').style.display = "none" ; 
    			break;
    		case"menu_Jeux_PC":
    			$('sous_menu_Jeux_PC').style.display = "none" ; 
    			$('sous_menu_Jeux_PC').style.display = "none" ; 
    			$('sous_menu_Jeux_PC').style.display = "block" ; 
    			break; 
    	}
    }
    </script>
    Mais ne fonctionne toujours pas je donne donc mon code php mais ont est a la limite du hors sujet de la section non?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    <?php
    	include("connect_bdd\connection_BDD.php");
     
    ?>
     
    <div id="menu">
    	<?php
    		$riq = "SELECT * FROM type";
    		$rip = mysql_query($riq);
    		while($ris=mysql_fetch_assoc($rip))
    		{
    			echo "<div id='menu_".$ris['LIBELLE_TYPE']."' style='border:1px solid black' onclick='deroulant(\"menu_".$ris['LIBELLE_TYPE']."\")'>
    					<span class='menu'>".$ris['LIBELLE_TYPE']."</span><br/>
    				</div>
    				<div id='sous_menu_".$ris['LIBELLE_TYPE']."' style='display:none'>
    			";	
     
    			$ruq = "SELECT * FROM categorie WHERE ID_TYPE = ".$ris['ID_TYPE']." ";
    			$rup = mysql_query($ruq);
    			while($rus=mysql_fetch_assoc($rup))
    			{
    				echo "<a href='acceuil.php?choix=".$rus['LIBELLE_CAT']."'>".$rus['LIBELLE_CAT']."</a><br/>";
    			}
     
    			echo"</div>";
    		}
    	?>
    </div>
    Merci d'avance pour vos lumières.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    432
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 432
    Par défaut
    Ça y est j'ai trouver le problème étais la:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $('sous_menu_Musique').style.display = "block" ; 
    			$('sous_menu_Musique').style.display = "none" ; 
    			$('sous_menu_Musique').style.display = "none" ;
    Ils sont identique, probleme de boucle.
    Voila ma solution:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    $num=0;
    	while($ros=mysql_fetch_assoc($rop))
    	{
    		$num++;
    		echo "case\"menu_".$ros['LIBELLE_TYPE']."\":";
     
    		$i=0;
    		$ryq = "SELECT * FROM type";
    		$ryp = mysql_query($ryq);
    		while($rys=mysql_fetch_assoc($ryp))
    		{	
    			$i++;
    			if($i == $num)
    			{$monDisplay = "block"; }
    			else
    			{$monDisplay = "none"; }
    			echo "$('sous_menu_".$rys['LIBELLE_TYPE']."').style.display = \"".$monDisplay."\" ; ";
    		}
    		echo "break;";
    	}
    Merci et désoler pour le dérangement.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. appel fonction javascript en php
    Par sami117 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 11/03/2009, 15h28
  2. fonction javascript dans php
    Par roussos dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 12/09/2008, 14h43
  3. Réponses: 5
    Dernier message: 01/02/2008, 15h29
  4. Réponses: 1
    Dernier message: 19/10/2007, 08h53
  5. [PHP-JS] appel d'une fonction javascript en php
    Par notour dans le forum Langage
    Réponses: 7
    Dernier message: 13/04/2007, 13h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo