[PHP] uri aléatoire dans du texte

uri aléatoire dans du texte [PHP] - PHP - Programmation

Marsh Posté le 21-09-2003 à 03:04:32    

Salut  :jap:

 

Je cherche un moyen de mettre une url aléatoire (qui change a chaque rafraichissement de la page) sur sur une lettre (en fait c'est pas une lettre mais des chiffres) d'une image convertie en html (http://nerim.net/perso/index.htm)...

 

Si quelqu'un a une idée, je suis preneur :D


Message édité par gagayouyou le 15-07-2011 à 18:17:58
Reply

Marsh Posté le 21-09-2003 à 03:04:32   

Reply

Marsh Posté le 21-09-2003 à 06:01:33    

[:autobot]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 21-09-2003 à 14:38:15    

:lol:  :lol:  :lol:

 

en gros, comment mettre un lien hypertexte aléatoirement sur 1 seul caractere de cette page http://nerim.net/perso/index.htm a chaque rafraichissement de cette meme page ?

 

C'est un peu plus clair ? ^^

 


Message édité par gagayouyou le 15-07-2011 à 18:18:12
Reply

Marsh Posté le 21-09-2003 à 14:51:46    

euh sur un caractere donné ou bien le choix du caractere est laissé au hasard aussi [:autobot]
 
 
http://php.net/random


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 21-09-2003 à 15:34:07    

$letters = array('a','b','c',...);
 
$thisletter = $letters[array_rand($letters)];


Message édité par Freekill le 21-09-2003 à 15:34:49

---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le 21-09-2003 à 15:34:43    

Freekill a écrit :

$letters = array('a','b','c',...);
 
$thisletter = $letters[rand(sizeof($letters))];

je crois pas que c'est ça qu'il veut [:ddr555]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 21-09-2003 à 15:35:10    

the real moins moins a écrit :

je crois pas que c'est ça qu'il veut [:ddr555]


 
Tu crois ?  :??:


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le 21-09-2003 à 15:36:43    

le choix du caractere est laissé au hasard   :pt1cable:

Reply

Marsh Posté le 21-09-2003 à 15:37:32    

Freekill a écrit :


 
Tu crois ?  :??:  

ui :)
 
il veut qu'un des chars de son texte soit un lien (<a href="$url">o</a> )
 
mais l'$url doit etre prise au hasard (dans une liste d'urls, j'imagine, donc peut etre que tu n'as posté pour rien)
je soupçonne aussi que le char surlequel ce lien est fait doit etre pris au hasard.
 
bref, c'est tout con, y'a qu'a lire la doc de rand [:spamafote]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 21-09-2003 à 15:37:56    

J'ai fait un truc qui ressemble tiens? :D
 
http://freekill.free.fr/tests/asciimage/index.php
 
(l'upload marche po sur free.fr, pas eu le temps d'adapter)


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le 21-09-2003 à 15:37:56   

Reply

Marsh Posté le 21-09-2003 à 15:42:03    

Pour le caractère au hasard :
 
<?php
echo chr(rand(33,126));
?>


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le 21-09-2003 à 15:44:08    

Freekill a écrit :

Pour le caractère au hasard :
 
<?php
echo chr(rand(33,126));
?>

:non:  
un charactere de son texte :D
 
 
putain si ça continue je vais lui faire son truc bordel :o


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 21-09-2003 à 15:51:36    

:o  
 

Code :
  1. <?php
  2. $text = "bla blalbblbalblblallalblbllzlalfllbldleslzz";
  3. $text = substr_replace($text, "GNI!", rand(0,strlen($text)), 1);
  4. echo $text;
  5. ?>


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le 21-09-2003 à 15:53:28    

faudrait eviter que ça tombe sur un blanc :o
 
 
 
 
ps: arrête de repondre, qu'il se démerde, un peu :o


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 21-09-2003 à 16:14:41    

On lui a fait peur ?  :??:


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le 21-09-2003 à 22:06:27    

the real moins moins a écrit :

faudrait eviter que ça tombe sur un blanc :o
 
 
 
 
ps: arrête de repondre, qu'il se démerde, un peu :o


 
L'esprit RTFM m'a toujours déplu...
Pour moi, dans entraide il y a aide :o
Bref, vais me démerder tout seul
 
Merci quand même

Reply

Marsh Posté le 21-09-2003 à 22:22:56    

faut pas non plus confondre entraide et "faire faire le boulot aux autres à ta place hein", je vois pas du tout pourquoi je passerais 3 heures sur ton truc pour toi :??:
(eh oui, j'ai autre chose à foutre, malgré les apparences)
je t'ai dit ou aller chercher, quoi lire, et freekill t'as meme donné des bouts de code utiles. on est meme allés jusqu'a décortiquer ton probleme alors que t'es meme pas foutu de l'expliquer.
 
salut.


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 22-09-2003 à 06:48:47    

gagayouyou a écrit :


 
L'esprit RTFM m'a toujours déplu...
Pour moi, dans entraide il y a aide :o
Bref, vais me démerder tout seul
 
Merci quand même


 
Tain j'y crois pas?  :heink:  
 
La prochaine fois evite-toi/nous la peine d'un topic inutile?  :pfff:


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le 22-09-2003 à 08:18:57    

Pour son probleme(dans ma grande bonté), je decomposerai le texte en mettant 1 caractere par case d'un array, puis je les afficherai 1 par un, et quand j'arriverai à la case correspondant au chiffre tiré aleatoirement j'afficherai le <a href=$urlaleatoireaussi> ...... </a>
 
Enfin son probleme tiens + de la conception de l'algorytme que d'un probleme de php :pt1cable:

Reply

Marsh Posté le 22-09-2003 à 13:10:36    

aspegic500mg a écrit :

Pour son probleme(dans ma grande bonté), je decomposerai le texte en mettant 1 caractere par case d'un array, puis je les afficherai 1 par un, et quand j'arriverai à la case correspondant au chiffre tiré aleatoirement j'afficherai le <a href=$urlaleatoireaussi> ...... </a>
 
Enfin son probleme tiens + de la conception de l'algorytme que d'un probleme de php :pt1cable:  

au lieu de faire un array immense qui va bouffer des resources inutilement, tu tiens simplement un compteur a jour au fur et a mesure que tu affiches les caracteres.


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 22-09-2003 à 13:25:49    

Mais alors il faut "avancer" au fur et à mesure dans les caracteres du texte? :??:

Reply

Marsh Posté le 22-09-2003 à 13:28:40    

aspegic500mg a écrit :

Mais alors il faut "avancer" au fur et à mesure dans les caracteres du texte? :??:  

ben si le "texte" est pré-existant avec la colorisation et tout, tu fais comme FreeKill a dit (un str_replace à la position X), si il est generé depuis une image bitmap, tu fais comme j'ai dit :D


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 22-09-2003 à 13:44:37    

Freekill a écrit :

J'ai fait un truc qui ressemble tiens? :D
 
http://freekill.free.fr/tests/asciimage/index.php
 
(l'upload marche po sur free.fr, pas eu le temps d'adapter)


 
trop sympa comme truc, peut tu m'expliquer brievement comment tu as fait ca? (le dessin avec les 0 et 1) Genre me donner les grandes ligne du comment. :D

Reply

Marsh Posté le 22-09-2003 à 16:00:36    

aspegic500mg a écrit :


 
trop sympa comme truc, peut tu m'expliquer brievement comment tu as fait ca? (le dessin avec les 0 et 1) Genre me donner les grandes ligne du comment. :D  


 
Deux boucles imbriquées pour analyser une grille de points de l'image et trouver leur couleur.
 

Code :
  1. $file = "image.jpg";
  2. if ($text=="" ) { $text = "01"; }
  3. $image = imageCreateFromJPEG($file);
  4. $size = getimagesize($file);
  5. $width = $size[0];
  6. $height = $size[1];
  7. $resol = 150;
  8. $xgrid = ceil($width/$resol);
  9. $ygrid = $xgrid*1.8;
  10. $x = $xgrid;
  11. $y = $ygrid;
  12. while ($y<$height)
  13. {
  14. while ($x<$width)
  15. {
  16.  $colorindex = imagecolorat($image,$x,$y);
  17.  $rgb = imagecolorsforindex($image,$colorindex);
  18.  $color = dechex(($rgb[red]<<16)|($rgb[green]<<8)|$rgb[blue]);
  19.  $letter = substr($text,$pos,1);
  20.  $pos++;
  21.  if ($pos >= strlen($text)) { $pos = 0; }
  22.  if ($color != $oldcolor && $letter != " " ) { echo "</span><span style=\"color:#$color;\">$letter"; }
  23.  else { echo $letter; }
  24.  $oldcolor = $color;
  25.  $x += $xgrid;
  26. }
  27. echo "\r\n<br />\r\n";
  28. $x = $xgrid;
  29. $y += $ygrid;
  30. }


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
Reply

Marsh Posté le 04-11-2003 à 02:02:56    

Freekill a écrit :


 
Deux boucles imbriquées pour analyser une grille de points de l'image et trouver leur couleur.
 

Code :
  1. $file = "image.jpg";
  2. if ($text=="" ) { $text = "01"; }
  3. $image = imageCreateFromJPEG($file);
  4. $size = getimagesize($file);
  5. $width = $size[0];
  6. $height = $size[1];
  7. $resol = 150;
  8. $xgrid = ceil($width/$resol);
  9. $ygrid = $xgrid*1.8;
  10. $x = $xgrid;
  11. $y = $ygrid;
  12. while ($y<$height)
  13. {
  14. while ($x<$width)
  15. {
  16.  $colorindex = imagecolorat($image,$x,$y);
  17.  $rgb = imagecolorsforindex($image,$colorindex);
  18.  $color = dechex(($rgb[red]<<16)|($rgb[green]<<8)|$rgb[blue]);
  19.  $letter = substr($text,$pos,1);
  20.  $pos++;
  21.  if ($pos >= strlen($text)) { $pos = 0; }
  22.  if ($color != $oldcolor && $letter != " " ) { echo "</span><span style=\"color:#$color;\">$letter"; }
  23.  else { echo $letter; }
  24.  $oldcolor = $color;
  25.  $x += $xgrid;
  26. }
  27. echo "\r\n<br />\r\n";
  28. $x = $xgrid;
  29. $y += $ygrid;
  30. }




 
Ca fonctionne chez moi mais: j'ai augmenté un tit peu la $resolution, et j'ai mis un style pour fixer la taille de police du texte à 12 sinon ca rends un truc immonde meme pas reconnaissable :D  
 
Par contre le fait que les 0 et 1 ne soit pas aussi large que haut fait que mon image est un peu etiré vers le haut/bas :na: (on doit pouvoir changer ca par un style, jvais chercher...)
 
edit: style =>

Code :
  1. line-height: 11px;


Message édité par aspegic500mg le 04-11-2003 à 02:13:16
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed