concaténation de variables [php] - Programmation
Marsh Posté le 18-01-2001 à 13:13:14
Moi aussi, ca me manque que l'on ne puisse pas evaluer du php en php.
Si quelqu'un a une idée ...
Marsh Posté le 18-01-2001 à 13:19:42
Citation : |
Ca marche ça ? Je suis au taf, j'ai pas mon serveur sous la main pour tester mon horreur
Et pour faire les choses bien, faudrait des semaphores, parceque si yen a deux qui appellent la fonction en meme tezmps, ca va pas être bo
Ou alors une fonction qui genere un nom différent à chaque fois pour le fichier, et qui le supprime après le include.
--Message édité par kadreg--
Marsh Posté le 18-01-2001 à 13:28:53
Le fou !!!
Moi c pareil, j'suis au boulot, donc je peu pas testé ça.
Mais on verra, c une idée...
Marsh Posté le 18-01-2001 à 13:33:41
essaie ca
for ($i=0;$i<=3 ;$i++ )
{
$name="plage" .$i;
echo $name;
echo "<br>";
}
Marsh Posté le 18-01-2001 à 13:35:42
Ah il manque un truc
<HTML><BODY>
<?
$plage0="test0";
$plage1="test1";
$plage2="test2";
$plage3="test3";
for ($i=0;$i<=3 ;$i++ )
{
$name="plage" .$i;
echo $$name;
echo "<br>";
}
?>
</BODY></HTML>
Marsh Posté le 18-01-2001 à 13:49:48
Merci Lord II,
je testerais tout ça ce soir, je vous tiendrais au courant.
Si qqu'un à d'autres idées..
Marsh Posté le 18-01-2001 à 13:57:57
Celle de LordII elle est mieux quand même. Je vais tacher de m'en souvenir du $$.
Marsh Posté le 18-01-2001 à 14:28:36
remplace ta ligne echo par :
echo($plage[$i]);
Du coup plage devient un tableau (array).
Marsh Posté le 18-01-2001 à 19:41:14
J'ai corrigé mon code, il fonctionne maintenant
Citation : |
PS : c'est pas pour ça qu'il faut l'utiliser hein
--Message édité par kadreg--
Marsh Posté le 19-01-2001 à 10:33:35
Bon, j'ai testé tout ça et le $$ ça marche
Mais j'ai encore un problème :
qd je lui demande de mettre le titre dans ma base, là ça marche plus :
je fais
for ($i=0;$i<=20;$i++)
{
$titre="plage".$i;ss
echo ($$name); //ça affiche bien le titre
//connexion à MySQL et tout le truc...
$req="INSERT INTO titre VALUES ('$num_cd','$i','$$name'"
//exécution de la requête
}
et là, ds la base, il inscrit plage1, plage 2...
Lord II à l'aide !!!
Marsh Posté le 19-01-2001 à 11:36:16
ca ca marche verifie la syntaxe, il faut utiliser l'opérateur de concaténation car le double opérateur est une syntaxe complexe. Pour quelle soit correctement interprété dans une chaine il faut lui mettre des accolades ou des crochets je ne sais plus donc concaténation..
$req="INSERT INTO titre VALUES ('$num_cd','$i','" .$$name ."'";
Dans cette requete il faut que tu spécifie tpus les champs des colones. Je pense qu'il est plus clair de spécifier à chaque fois de mettre les colones concernées.
Si il n'insère toujours pas correctement cela peut provenir de la cartéristique du champ dans la base, genre int pour varchar etc...
Marsh Posté le 19-01-2001 à 11:37:09
A la place du smiley il y a parenthèse, guillemet et ppoint virgule !!!
Marsh Posté le 18-01-2001 à 13:03:53
Bonjour,
voila, je récupère plusieurs variables,depuis un formulaire, dont le nom est généré automatiquement : plage1, plage2, plage3 etc.. qui contiennent des titres de morceaux.
et je voudarais utiliser ces variables dans une boucle genre :ss
for($i=1,$i<=20;$i++)
{
echo($"plage$i" ); //je veux afficher le titre du morceau
}
mais ça marche pas. J'ai essayé $plage.$i, $"plage".$i et toujours rien... Je ne réussi qu'à afficher plage1, plage2 ...
et j'ai pas envie de me taper du code pour chaque nom....
Si vous aviez une solution, ça serait pas mal
Merci