Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/09/2011, 21h12   #1
Futur Membre du Club
 
Inscription : mai 2010
Messages : 50
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 50
Points : 18
Points : 18
Par défaut Passer du JS dans un array

Salut à tous,

Voila, je me creuse la tête depuis plusieurs heures. Je dois passer du JavaScript dans un array PHP. En fait, je rentre un <input> dans mon tableau, et ça bloque lorsque j'ajoute onFocus et onBlur car j'ai des parenthèses pour les if.

Mieux qu'une longue explication incompréhensible, voici mon exemple:

Code :
1
2
3
4
5
6
$args = array(
		'fields' => apply_filters( 'comment_form_default_fields', array(
		'author' => '<p><input type="text" name="author" id="author" value="' . $author . '" size="22" tabindex="1" ' . $aria_req . ' onfocus="if(this.value==this.defaultValue)this.value=''" onblur="if(this.value=='')this.value=this.defaultValue"/></p>',
		'email'  => '<p><input type="text" name="email" id="email" value="' . $email . '" size="22" tabindex="2" ' . $aria_req . ' onfocus="if(this.value==this.defaultValue)this.value=''" onblur="if(this.value=='')this.value=this.defaultValue"/></p>',
		'url'    => '<p><input type="text" name="url" id="url" value="' . $url . '" size="22" tabindex="3" onfocus="if(this.value==this.defaultValue)this.value=''" onblur="if(this.value=='')this.value=this.defaultValue"/></p>'
		)));
En sortie, j'ai l'erreur suivante:
Code :
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ')' in blablabla
J'ai bien essayé d'échapper les parenthèse, mais ça ne change rien. J'en déduis que c'est pas comme ça qu'il faut faire ! Quelle perspicacité Mais je ne sais absolument pas comment m'y prendre maintenant !

Merci à tous ceux qui voudrons bien m'apporter un coup de pouce !
julien731 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2011, 21h18   #2
Modérateur
 
Inscription : septembre 2010
Messages : 7 123
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 123
Points : 8 475
Points : 8 475
problème de quotes, mais je te déconseille de faire comme ça, fois toi plutôt un lib a ajouter dans ta page
__________________
http://blog.stealth35.com/
stealth35 est actuellement connecté   Envoyer un message privé Réponse avec citation 10
Vieux 21/09/2011, 21h58   #3
Nouveau Membre du Club
 
Inscription : avril 2009
Messages : 89
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 89
Points : 37
Points : 37
Par défaut yopyop

Hello,

tu échappes mal tes quotes il faut faire comme ceci:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
$author = 1;
$email = 2 ;
$aria_req = 3 ;
$array = array (
		"author" => '<p><input type="text" name="author" id="author" value="' . $author . '" size="22" tabindex="1 ' . $aria_req . '" 
		onfocus="if(this.value==this.defaultValue)this.value=\'\'" 
		onblur="if(this.value==\'\')this.value=this.defaultValue"/></p>',
		"email"  => '<p><input type="text" name="email" id="email" value="' . $email . '" size="22" tabindex="2 ' . $aria_req . '" 
		onfocus="if(this.value==this.defaultValue)this.value=\'\'" 
		onblur="if(this.value==\'\')this.value=this.defaultValue"/></p>',
		);
echo($array['author'] . $array['email']);
et ça nous donne:
Code :
1
2
3
4
5
6
 
<p><input type="text" name="author" id="author" value="1" size="22" tabindex="1 3" 
		onfocus="if(this.value==this.defaultValue)this.value=''" 
		onblur="if(this.value=='')this.value=this.defaultValue"/></p><p><input type="text" name="email" id="email" value="2" size="22" tabindex="2 3" 
		onfocus="if(this.value==this.defaultValue)this.value=''" 
		onblur="if(this.value=='')this.value=this.defaultValue"/></p>
helkøwsky est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 21/09/2011, 22h13   #4
Futur Membre du Club
 
Inscription : mai 2010
Messages : 50
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 50
Points : 18
Points : 18
Oh merde ! Le boulet ! Je me suis focalisé sur les parenthèses, alors que ce sont les quotes qui n'étaient pas échappées du tout ! Effectivement tout marche comme ça ! Merci infiniement pour votre aide, je pourrais aller me coucher serein
julien731 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h31.


 
 
 
 
Partenaires

Hébergement Web