Window.open et URL variable

Résolu
cs_sebalex
Messages postés
153
Date d'inscription
vendredi 25 février 2005
Statut
Membre
Dernière intervention
6 janvier 2017
- Modifié par jordane45 le 21/01/2015 à 18:36
cs_sebalex
Messages postés
153
Date d'inscription
vendredi 25 février 2005
Statut
Membre
Dernière intervention
6 janvier 2017
- 22 janv. 2015 à 22:53
Salut à tous et... BONNE ANNÉE !

Voilà, j'ai suivi divers forums et échanges d'idées pour trouver le moyen de rediriger un lien d'un List/Menu déroulant vers une page avec window.open(..., '_blank'); et ça ne fonctionne pas.

J'ai donc un List/Menu dont le "option.value=" provient d'une requête MySQL. Lorsque je sélectionne une donnée dans la liste, je souhaite qu'une nouvelle page s'ouvre vers ce lien... Voici mon code QUI NE FONCTIONNE PAS !

function OpenComp()
{
 MyUrl = document.form2.COMPDECLA.value;
 if(MyUrl != 0)
 {
 window.open('MyUrl', '_blank');
 }
}



Est-ce que quelqu'un aurait une idée ?

D'avance merci et excellente soirée à tous.


EDIT : Ajout des balises de code

David

3 réponses

jordane45
Messages postés
35502
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 mai 2022
356
21 janv. 2015 à 18:37
Bonjour,

1 - Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

2- Une variable ne doit pas être entre quotes...
function OpenComp(){
 MyUrl = document.form2.COMPDECLA.value;
 if(MyUrl ) {
   window.open(MyUrl , '_blank');
 }
}

0
cs_sebalex
Messages postés
153
Date d'inscription
vendredi 25 février 2005
Statut
Membre
Dernière intervention
6 janvier 2017

21 janv. 2015 à 18:47
Jordane,

Merci pour tes précisions et promis, j'appliquerai cette règle à l'avenir. J'ai enlevé les quotes comme tu l'as suggéré et il ne se passe rien. Je précise que la variable provient d'un Select dont option.value est récupéré après une requête MySQL. L'URL complet (avec https://...) est donc dans ma base de données...

Bien à toi
0
jordane45
Messages postés
35502
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 mai 2022
356
21 janv. 2015 à 19:38
Sans le détail de ton code.. difficile de te répondre....
Est ce que ta fonction se lance au moins ??
Ajoute y un ALERT pour le vérifier.
0
cs_sebalex
Messages postés
153
Date d'inscription
vendredi 25 février 2005
Statut
Membre
Dernière intervention
6 janvier 2017

22 janv. 2015 à 21:58
Jordane,

Lorsque je mets un ALERT(), la fonction se lance très bien et l'URL repris dans la BDD s'affiche. Lorsque je remets window.open(MyUrl.value); plus rien ne s'effectue.
0
jordane45
Messages postés
35502
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 mai 2022
356
22 janv. 2015 à 22:19
D'ou vient ce .value ??
0
cs_sebalex
Messages postés
153
Date d'inscription
vendredi 25 février 2005
Statut
Membre
Dernière intervention
6 janvier 2017

22 janv. 2015 à 22:26
Mon code avec ALERT (fonctionne)

function OpenComp(){
 var MyUrl = document.getElementById('COMPDECLA');
 if(MyUrl.value != 0) {
   alert(MyUrl.value);
   end();
 }


Mon code avec WINDOW.OPEN (ne fonctionne pas)

function OpenComp(){
 var MyUrl = document.getElementById('COMPDECLA');
 if(MyUrl.value != 0) {
   window.open(MyUrl.value);
 }


Mon bout de code affichant le Menu/List en PHP


                        <select name="COMPDECLA" class="form_Login" id="COMPDECLA" onChange="OpenComp()">
                          <option value="0">Choisir...</option>
                        	<?PHP do{
							mysql_select_db($database_connexion, $connexion);
							$query_compagnie = "SELECT * FROM COMPAGNIES WHERE ID_COMP = '$row_compagnies[IDCOMPAGNIE]'";
							$compagnie = mysql_query($query_compagnie, $connexion) or die(mysql_error());
							$row_compagnie = mysql_fetch_assoc($compagnie);
							?>
                        	<option value="<?PHP echo $row_compagnie['URL'];?>"><?PHP echo $row_compagnie['NOM'];?></option>
                            <?PHP }while($row_compagnies = mysql_fetch_assoc($compagnies));?>
                        </select>


Le .value provient de
$row_compagnie['URL'];
!


Je ne peux pas t'en dire plus. Je ne comprends pas où est l'erreur....
0
cs_sebalex
Messages postés
153
Date d'inscription
vendredi 25 février 2005
Statut
Membre
Dernière intervention
6 janvier 2017

22 janv. 2015 à 22:53
Je suis un grand débile !!!!!!

Mes préférences Internet bloquait les Pop-up....

Tout fonctionne parfaitement bien. A présent je frais avoir un problème si les visiteurs bloquent les fenêtres surgissantes !

Merci encore de ta précieuse aide et bonne soirée
0