Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1456 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] pb de concaténation

 



 Mot :   Pseudo :  
 
 Page :   1  2
Page Précédente
Auteur Sujet :

[PHP] pb de concaténation

n°254006
DrWatson
_@''
Posté le 26-11-2002 à 15:02:02  profilanswer
 

Voilà, j'ai un souci pour concaténer img_up et ma variable comprise dans $ligne->id à cause des "." la concaténation ne se fait pas, que dois-je rajouter pour que cela fonctionne ? (ça me fait des erreus de script dans ie et le roller over n'a pas lieu justement.
 
 
 
 
print "<a href=\"#haut\"onmouseover=\"document.img_up.src='images/up_on.gif'\" onmouseout=\"document.img_up.$ligne->id.src='images/up_off.gif'\"><img src=\"images/up_off.gif\" border=\"0\" name=\"img_up.$ligne->id\"></a>";


---------------
.:: Feed-Back  ::.
mood
Publicité
Posté le 26-11-2002 à 15:02:02  profilanswer
 

n°254178
Fred999
Rabat-joie
Posté le 26-11-2002 à 17:41:34  profilanswer
 

Perso j'encapsule jamais mon HTML dans le PHP, c'est plutôt du :
 
if (condition) { ?>
 
<a href="<? echo $mapage; ?>">blablabla...</a>
 
<? } ?>
 
Avec ça, j'évite quasiment tous les soucis de guillemets/apostrophes.
 
Tu vois le truc? :)


Message édité par Fred999 le 27-11-2002 à 10:47:23
n°254180
webmaster ​PCPRICE
Posté le 26-11-2002 à 17:44:15  profilanswer
 

sinon essaye de fermer les guillemets :
 
print "<a href=\"#haut\"onmouseover=\"document.img_up.src='images/up_on.gif'\" onmouseout=\"document.img_up".$ligne->id."src='images/up_off.gif'\"><img src=\"images/up_off.gif\" border=\"0\" name=\"img_up.".$ligne->id."\"></a>";

n°254181
DrWatson
_@''
Posté le 26-11-2002 à 17:44:55  profilanswer
 

Fred999 a écrit a écrit :

Perso j'encapsule jamais mon HTML dans le PHP, c'est  lputôt du :
 
if (condition) { ?>
 
<a href="<? echo $mapage; ?>">blablabla...</a>
 
<? } ?>
 
Avec ça, j'évite quasiment tous les soucis de guillemets/apostrophes.
 
Tu vois le truc? :)




 
moi je suis bordélique  :jap: :d
 
je vais essayer d'adapter ta méthode mais j'aurais tellement de page à modifier  :sweat:  
 
merci ;)


---------------
.:: Feed-Back  ::.
n°254183
antp
Super Administrateur
Champion des excuses bidons
Posté le 26-11-2002 à 17:45:25  profilanswer
 

Fred999 a écrit a écrit :

 
Avec ça, j'évite quasiment tous les soucis de guillemets/apostrophes.




 
par contre la lisibilité en prend un coup, c'est pire que les \" je trouve :D


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°254184
DrWatson
_@''
Posté le 26-11-2002 à 17:46:25  profilanswer
 

webmaster PCPRICE a écrit a écrit :

sinon essaye de fermer les guillemets :
 
print "<a href=\"#haut\"onmouseover=\"document.img_up.src='images/up_on.gif'\" onmouseout=\"document.img_up".$ligne->id."src='images/up_off.gif'\"><img src=\"images/up_off.gif\" border=\"0\" name=\"img_up.".$ligne->id."\"></a>";




 
je test ça ce soir, je te tiens au courant, merci !


---------------
.:: Feed-Back  ::.
n°254823
DrWatson
_@''
Posté le 27-11-2002 à 09:40:15  profilanswer
 

alors en fait j'ai réglé le pb en concaténant dans une variable à part, ct plus simple.
 
Merci de votre aide :)
 
 
$imagesource=img_up.$ligne->id;
   print "<center><br><a href=\"#haut\"onmouseover=\"document.$imagesource.src='images/up_on.gif'\"
   onmouseout=\"document.$imagesource.src='images/up_off.gif'\"><img
   src=\"images/up_off.gif\" border=\"0\" name=\"$imagesource\"></a>


---------------
.:: Feed-Back  ::.
n°254860
Fred999
Rabat-joie
Posté le 27-11-2002 à 10:48:06  profilanswer
 

antp a écrit a écrit :

 
 
par contre la lisibilité en prend un coup, c'est pire que les \" je trouve :D
 




 
Là, c'est chacun son staïle ;)
 
Et j'indente toujours bien mon code, ça aide pas mal ;)

n°254862
webmaster ​PCPRICE
Posté le 27-11-2002 à 10:50:57  profilanswer
 

oué mais tu prends de mauvaise habitude. C'est vrai que le php reconnait des variable dans des chaines de texte genre
 
echo "il fait $temperature degré $lieu, $température_phrase";
 
mais il est plus propre de voir la différence entre du vrai texte et des variables, d'ailleur avec un editeur de texte a colorification syntaxique tu le voit bien
donc ca donne :
 
echo "il fait ".$temperature." degré ".$lieu.", ".$température_phrase;
 
cet exemple parce que pour moi :
"il fait 0 degré dans mon bureau, et je me les pêleeeeeeeeeeeeee!!!!!!!!!!!!!!!!!"

n°254877
DrWatson
_@''
Posté le 27-11-2002 à 11:02:01  profilanswer
 

webmaster PCPRICE a écrit a écrit :

oué mais tu prends de mauvaise habitude. C'est vrai que le php reconnait des variable dans des chaines de texte genre
 
echo "il fait $temperature degré $lieu, $température_phrase";
 
mais il est plus propre de voir la différence entre du vrai texte et des variables, d'ailleur avec un editeur de texte a colorification syntaxique tu le voit bien
donc ca donne :
 
echo "il fait ".$temperature." degré ".$lieu.", ".$température_phrase;
 
cet exemple parce que pour moi :
"il fait 0 degré dans mon bureau, et je me les pêleeeeeeeeeeeeee!!!!!!!!!!!!!!!!!"




 
j'avais fait ce que tu m'as dit mais ça concatenait avec le point ! genre img_up.id et non img_upid
 
enfin en mettant les guillemets comme tu me l'as indiqué.
 
Y'a trop de point dans ma fonction c'est le bordel :D
 
cela dit je note ta méthode pour d'autres trucs plus simple :)


Message édité par DrWatson le 27-11-2002 à 11:03:31

---------------
.:: Feed-Back  ::.
mood
Publicité
Posté le 27-11-2002 à 11:02:01  profilanswer
 

n°254879
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 27-11-2002 à 11:03:58  profilanswer
 

Mais euh juste une question, pourquoi y a un point dans le nom ? Ca signifie quoi img_up.$ligne->id ?


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°254883
DrWatson
_@''
Posté le 27-11-2002 à 11:06:07  profilanswer
 

Taiche a écrit a écrit :

Mais euh juste une question, pourquoi y a un point dans le nom ? Ca signifie quoi img_up.$ligne->id ?




 
le . pour concaténer


---------------
.:: Feed-Back  ::.
n°254885
webmaster ​PCPRICE
Posté le 27-11-2002 à 11:07:14  profilanswer
 

sinon tu as la methode inverse pour les cas delicat cad mettre le php dans le html et pas l'inverse:
 
<?
 toncode
?>
 ton html <?=$variable?> suite html
<?
 ton code
?>
 
c rendu plus facile avec le tag abrégé inspiré de l'asp <%=var%>
plus besoin de faire <? echo var ; ?>

n°254888
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 27-11-2002 à 11:09:03  profilanswer
 

DrWatson a écrit a écrit :

 
 
le . pour concaténer




 
Bin OK mais alors img_up, c'est quoi ? C'est pas une variable passke y a pas $ devant. C'est pas du texte, y a pas de guillemets.... y a un truc qui m'échappe :heink:


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°254893
webmaster ​PCPRICE
Posté le 27-11-2002 à 11:15:26  profilanswer
 

du javascript?
mais moi non plus je voit pas ou le point d'objet javascript cause pb ,rmq j'ai jamais essayé :D

n°254895
DrWatson
_@''
Posté le 27-11-2002 à 11:16:53  profilanswer
 

Taiche a écrit a écrit :

 
 
Bin OK mais alors img_up, c'est quoi ? C'est pas une variable passke y a pas $ devant. C'est pas du texte, y a pas de guillemets.... y a un truc qui m'échappe :heink:  




 
c'est le nom de l'objet que je donne à mon image


---------------
.:: Feed-Back  ::.
n°254899
antp
Super Administrateur
Champion des excuses bidons
Posté le 27-11-2002 à 11:19:13  profilanswer
 

webmaster PCPRICE a écrit a écrit :

 
 
echo "il fait ".$temperature." degré ".$lieu.", ".$température_phrase;




 
vaut mieux mettre des ' que des " alors, ça évite les problèmes pour mettre les " du HTML, et ça va plus vite vu que PHP n'interprête pas ce qui est entre ' ' ;)


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°254902
webmaster ​PCPRICE
Posté le 27-11-2002 à 11:21:21  profilanswer
 

ca a toujours été la grande question pour moi  
 
' ou " tel est la question!
 
et si on se limite a l'utilisation d'un ca evite de s'emmeler le spinceaux.

n°254904
lorill
Posté le 27-11-2002 à 11:22:04  profilanswer
 

webmaster PCPRICE a écrit a écrit :

ca a toujours été la grande question pour moi  
 
' ou " tel est la question!
 
et si on se limite a l'utilisation d'un ca evite de s'emmeler le spinceaux.




 :heink:

n°254912
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 27-11-2002 à 11:27:15  profilanswer
 

DrWatson a écrit a écrit :

 
 
c'est le nom de l'objet que je donne à mon image




 
C'est un objet Javascript, donc. Mais côté PHP c'est vu comme du texte, donc ta ligne $imagesource=img_up.$ligne->id; j'comprends pas pourquoi elle marche :D
 
Je sais chu pénible mais j'ai comme l'impression que soit il manque des guillemets quelque part, soit PHP a pas besoin de guillemets pour savoir que c'est du texte et là ça me pose un problème d'éthique.


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°254925
ethernal
Chercheur de vérité...
Posté le 27-11-2002 à 11:37:51  profilanswer
 

$imagesource= 'img_up'.$ligne->id;


---------------
...oups kernel error...
n°254928
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 27-11-2002 à 11:40:02  profilanswer
 

ethernal a écrit a écrit :

$imagesource= 'img_up'.$ligne->id;




 
Ui là je comprends mieux mais quand DrWatson disait que ça marchait avec ce qu'il avait mis (sans les quotes, cf 7ème post), j'ai eu peur de ne plus rien comprendre au PHP :D


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°254931
DrWatson
_@''
Posté le 27-11-2002 à 11:45:17  profilanswer
 

Taiche a écrit a écrit :

 
 
Ui là je comprends mieux mais quand DrWatson disait que ça marchait avec ce qu'il avait mis (sans les quotes, cf 7ème post), j'ai eu peur de ne plus rien comprendre au PHP :D




 
bein ça marche vraiment mon truc !


---------------
.:: Feed-Back  ::.
n°254933
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 27-11-2002 à 11:47:01  profilanswer
 

DrWatson a écrit a écrit :

 
 
bein ça marche vraiment mon truc !




 
SANS les quotes ou les guillemets ? J'veux dire tu fais $imagesource=img_up.$ligne->id; et pas $imagesource= 'img_up'.$ligne->id; ?


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°254949
omega2
Posté le 27-11-2002 à 12:06:07  profilanswer
 

Taiche a écrit a écrit :

 
 
SANS les quotes ou les guillemets ? J'veux dire tu fais $imagesource=img_up.$ligne->id; et pas $imagesource= 'img_up'.$ligne->id; ?



Théoriquement, ca marche.
Comme ce n'est ni une variable (pas de $ devant) ni une fonction (pas de () derrière) ni un mot réservé, il considère ça comme du texte (du moins d'après ce que j'avais lu il y a quelques temps). Seul problème (hors le fait que le code devient vite illisible), c'est que le jour ou un mot réservé suplémentaire est rajouté, il va se chopé sa valeur au lieu du texte et là, il viendra gueulé que ca marche plus sans savoir pourquoi. ;)
Il me semble que j'avais lu ça dans mon bouquin php&mysql (a moins que ca soit dans un tutoriel) mais une chôse est sur, c'est très déconseillé.  
 
EDIT : Ca y est, je me souviens à quelle occasion j'avais lu ça : c'était pour les variable tableau ou $tab[texte] a exactement le même comportement et la même signification que $tab["texte"] tant que texte n'est pas un mot réservé. ;)


Message édité par omega2 le 27-11-2002 à 12:06:50
n°254968
DrWatson
_@''
Posté le 27-11-2002 à 12:21:00  profilanswer
 

Taiche a écrit a écrit :

 
 
SANS les quotes ou les guillemets ? J'veux dire tu fais $imagesource=img_up.$ligne->id; et pas $imagesource= 'img_up'.$ligne->id; ?




 
j'ai fait $imagesource=img_up.$ligne->id; et ça fonctionne mais l'autre doit fonctionner aussi mais j'ai pas essayé


---------------
.:: Feed-Back  ::.
n°254969
DrWatson
_@''
Posté le 27-11-2002 à 12:22:02  profilanswer
 

omega2 a écrit a écrit :

Théoriquement, ca marche.
Comme ce n'est ni une variable (pas de $ devant) ni une fonction (pas de () derrière) ni un mot réservé, il considère ça comme du texte (du moins d'après ce que j'avais lu il y a quelques temps). Seul problème (hors le fait que le code devient vite illisible), c'est que le jour ou un mot réservé suplémentaire est rajouté, il va se chopé sa valeur au lieu du texte et là, il viendra gueulé que ca marche plus sans savoir pourquoi. ;)
Il me semble que j'avais lu ça dans mon bouquin php&mysql (a moins que ca soit dans un tutoriel) mais une chôse est sur, c'est très déconseillé.  
 
EDIT : Ca y est, je me souviens à quelle occasion j'avais lu ça : c'était pour les variable tableau ou $tab[texte] a exactement le même comportement et la même signification que $tab["texte"] tant que texte n'est pas un mot réservé. ;)




 
donc préférer ' ou " ?


---------------
.:: Feed-Back  ::.
n°254988
omega2
Posté le 27-11-2002 à 12:35:47  profilanswer
 

DrWatson a écrit a écrit :

 
 
donc préférer ' ou " ?



Moi, je préfaire ", ca permet d'utiliser les caractères spéciaux tel que \n quand on en a besoin (avec ' il considère qu'il y a deux caractères le \ et le n et pas un retour à la ligne).

n°254989
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 27-11-2002 à 12:37:08  profilanswer
 

omega2 a écrit a écrit :

Théoriquement, ca marche.
 
[...]
 
EDIT : Ca y est, je me souviens à quelle occasion j'avais lu ça : c'était pour les variable tableau ou $tab[texte] a exactement le même comportement et la même signification que $tab["texte"] tant que texte n'est pas un mot réservé. ;)




 
:ouch:
Eh ba bordel, j'savais pas ça, c'est carrément crade. J'comprends pas que ça soit autorisé, c'est un nid à bugs monstrueux.
 
DrWatson : oui, effectivement, je te conseille les " ou les '. Comme le dit omega2, ton code sera plus lisible et t'auras pas de bug si jamais un mot réservé est ajouté.


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°254992
webmaster ​PCPRICE
Posté le 27-11-2002 à 12:39:32  profilanswer
 

moi c " parceque dans des texte j'utilise plus ' que "
 
exemple:
 
echo "c'est pas la joie";
 
est plus rapide que
 
echo 'c\'est pas la joie'
 
et puis le ' est plus eloigné de mon index que le " ;)

n°254993
omega2
Posté le 27-11-2002 à 12:40:30  profilanswer
 

Taiche a écrit a écrit :

 
 
:ouch:
Eh ba bordel, j'savais pas ça, c'est carrément crade. J'comprends pas que ça soit autorisé, c'est un nid à bugs monstrueux.
 
DrWatson : oui, effectivement, je te conseille les " ou les '. Comme le dit omega2, ton code sera plus lisible et t'auras pas de bug si jamais un mot réservé est ajouté.



Ca rajoute de la souplesse au langage.  :pt1cable:  
Par contre, c'est sur que pour avoir un code propre, c'est pas le top. ;)

n°254995
DrWatson
_@''
Posté le 27-11-2002 à 12:43:42  profilanswer
 

omega2 a écrit a écrit :

Ca rajoute de la souplesse au langage.  :pt1cable:  
Par contre, c'est sur que pour avoir un code propre, c'est pas le top. ;)




 
alors je met ' ou " à la place de rien ?
 
 
et si je met des ", ne devrais-je pas mettre \" ?


Message édité par DrWatson le 27-11-2002 à 12:44:02

---------------
.:: Feed-Back  ::.
n°254996
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 27-11-2002 à 12:43:52  profilanswer
 

omega2 a écrit a écrit :

Ca rajoute de la souplesse au langage.  :pt1cable:  




 
Ah ba ça, la souplesse elle est bien aidée, d'un coup ! Limite contortionniste  [:ddr555]  
J'suggèrerais bien aussi qu'ils virent les ; c'est chiant de les foutre à chaque fin d'ligne  :pt1cable:


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°255000
lorill
Posté le 27-11-2002 à 12:45:38  profilanswer
 

Taiche a écrit a écrit :

 
J'suggèrerais bien aussi qu'ils virent les ; c'est chiant de les foutre à chaque fin d'ligne  :pt1cable:  




[+]

n°255006
DrWatson
_@''
Posté le 27-11-2002 à 12:51:38  profilanswer
 

merci de vos précieuses explications  [:super chinois]


---------------
.:: Feed-Back  ::.
n°255008
webmaster ​PCPRICE
Posté le 27-11-2002 à 12:55:14  profilanswer
 

Taiche a écrit a écrit :

 
 
Ah ba ça, la souplesse elle est bien aidée, d'un coup ! Limite contortionniste  [:ddr555]  
J'suggèrerais bien aussi qu'ils virent les ; c'est chiant de les foutre à chaque fin d'ligne  :pt1cable:  




 
bah tu optiens de l'asp dans ce cas la ;)

n°255010
DrWatson
_@''
Posté le 27-11-2002 à 12:57:18  profilanswer
 

Taiche a écrit a écrit :

 
 
Ah ba ça, la souplesse elle est bien aidée, d'un coup ! Limite contortionniste  [:ddr555]  
J'suggèrerais bien aussi qu'ils virent les ; c'est chiant de les foutre à chaque fin d'ligne  :pt1cable:  




 
ça marche sans les ; :??:


---------------
.:: Feed-Back  ::.
n°255014
omega2
Posté le 27-11-2002 à 13:02:15  profilanswer
 

DrWatson a écrit a écrit :

 
 
alors je met ' ou " à la place de rien ?
 
 
et si je met des ", ne devrais-je pas mettre \" ?



Si tu mets des ", tu devras mettre un \" à chaque fois que t'en as un dans ton texte.
Mais si tu mets des ', tu devras mettre un '' (il me semble que c'est ça le caractère magique) à chaque fois que t'as un ' dans ton texte.

n°255015
omega2
Posté le 27-11-2002 à 13:03:03  profilanswer
 

DrWatson a écrit a écrit :

 
 
ça marche sans les ; :??:  



non, sans les ; ca marche pas, faut quand même un minimum de logique dans ce langage. ;)

n°255016
omega2
Posté le 27-11-2002 à 13:03:56  profilanswer
 

Taiche a écrit a écrit :

 
 
Ah ba ça, la souplesse elle est bien aidée, d'un coup ! Limite contortionniste  [:ddr555]  
J'suggèrerais bien aussi qu'ils virent les ; c'est chiant de les foutre à chaque fin d'ligne  :pt1cable:  



:lol: Bonne idée, et puis aussi qu'ils virent tout les $ et les (), c'est chiant de devoir en mettre partout.  :pt1cable:  :pt1cable:  :pt1cable:  :pt1cable:

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Précédente

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] pb de concaténation

 

Sujets relatifs
[PHP] Lancer un téléchargement sans recharger la pagePHP + JS c koi le probleme?? [RESOLU]
Question à propos de PHP[PHP] Source d'une page includée
[JAVA,JSP] JSP vs PHP , Pourquoi préférer JSP à PHP ?[PHP] PHP vs JSP? PHP semble plus performant ......mais
[PHP] Récupérer les variables dans une page sur un autre server[PHP] Concaténation difficile à comprendre
[PHP] Probleme de concatenation .... URGENT[PHP] Concatenation de chaine?
Plus de sujets relatifs à : [PHP] pb de concaténation


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR