concaténation dans un formulaire à envoyer vers une page.php

concaténation dans un formulaire à envoyer vers une page.php - PHP - Programmation

Marsh Posté le 08-05-2002 à 15:06:02    

voilà mon formulaire tout bête peut recevoir du texte ok mais aussi une url et si je veux que cette url s'affiche avec un lien, il va bien falloir que si le type qui rempli le formulaire de mon site ne doit pas se taper à la main un <a href="urldesonsite.com">urldesonsite.com</a> mais juste son url, que je concatène dans le code html de mon formulaire un truc du style "ajouter <a href="sitedumec">+sitedumec+</a>"
 
 
Si vous voyez ce que je veux dire, pouvez vous me dire comment procéder ?
 
(on part d'une balise toute bête input)
 
Merci  :jap:


---------------
.:: Feed-Back  ::. Choisis un travail que tu aimes, et tu n'auras pas à travailler un seul jour de ta vie.
Reply

Marsh Posté le 08-05-2002 à 15:06:02   

Reply

Marsh Posté le 08-05-2002 à 15:48:18    

avec une expression régulière :
 
function replink($Texte) {
  $imgm = ("\\1" );
  $imggo = ("\\1://\\2" );
  $Texte = strip_tags($Texte);
  $Texte = nl2br($Texte);
  $Texte = eregi_replace("(http|https|ftp)://([[:alnum:]/\n+-=%&:_.~?]+[#[:alnum:]+]*)","<a href=\"\\1://\\2\" target=\"_blank\">$imggo</a>",$Texte);
  $Texte = eregi_replace("(([a-z0-9_]|\\-|\\.)+@([^[:spa
 
ce:]]*)([[:alnum:]-])\.([^[:space:]]*)([[:alnum:]
 
-]))", "<a href=\"mailto:\\1\">$imgm</a>", $Texte);
  return $Texte ;
}
 
ensuite quand tu affiches tes données tu fais un echo replink($tonchamp)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 08-05-2002 à 16:22:01    

[:totoz]
 
merci !
 
Y'a moyen que tu m'expliques ces vilaines lignes ?
 
et surtout à quelle endroit je le met dans mon formulaire par rapport à mon input ?

 

[jfdsdjhfuetppo]--Message édité par DrWatson le 08-05-2002 à 16:22:49--[/jfdsdjhfuetppo]


---------------
.:: Feed-Back  ::. Choisis un travail que tu aimes, et tu n'auras pas à travailler un seul jour de ta vie.
Reply

Marsh Posté le 08-05-2002 à 16:26:41    

la fonction replink sert uniquement à remplacer  
 
www.site.com  
http://www.site.com
moi@moi.com
 
en lien HTML  
 
<a href="www.site.com" target="_blank">www.site.com</a>
<a href="http://www.site.com" target="_blank">http://www.site.com</a>
<a href="mailto:moi@moi.com" target="_blank">moi@moi.com</a>
 
donc tu peux t'en servir quand tu veux.


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 08-05-2002 à 16:53:12    

Donc dans mon formulaire je met comme ça ?
 
<input type="text" name="url">
function replink(url)
 
?


---------------
.:: Feed-Back  ::. Choisis un travail que tu aimes, et tu n'auras pas à travailler un seul jour de ta vie.
Reply

Marsh Posté le 08-05-2002 à 17:03:16    

tu veux l'afficher dans le champ texte du formulaire ?
 
<input type="text" name="lenom" value="<? echo replink($texte) ?>">
 
tu as bien compris que ça ne va pas se faire automatiquement hein ? il faut soit recharger la page soit que l'info à transformer provienne d'ailleurs.


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 08-05-2002 à 17:06:45    

en fait ça il se passe la chose suivante:
 
le formulaire reçoit l'info qui est postée vers un fichier php qui écrit dans le bdd mysql. Ensuite la page qui a le formulaire affiche cette bdd.
 
Je le met où alors ?


---------------
.:: Feed-Back  ::. Choisis un travail que tu aimes, et tu n'auras pas à travailler un seul jour de ta vie.
Reply

Marsh Posté le 08-05-2002 à 17:08:57    

tu le mets au moment d'afficher les infos de ta BDD, comme ça tu stockes moins d'infos dans ta BDD et tu les transforme avant de les afficher.


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 08-05-2002 à 17:22:47    

Sh@rdar a écrit a écrit :

tu le mets au moment d'afficher les infos de ta BDD, comme ça tu stockes moins d'infos dans ta BDD et tu les transforme avant de les afficher.  




 
 :jap: merci pour toute cette aide, j'ai compris :)


---------------
.:: Feed-Back  ::. Choisis un travail que tu aimes, et tu n'auras pas à travailler un seul jour de ta vie.
Reply

Marsh Posté le 08-05-2002 à 22:44:59    

je vois un mailto dans ta fonction, que fait il ? Que vient faire mailto là dedans  :??:


---------------
.:: Feed-Back  ::. Choisis un travail que tu aimes, et tu n'auras pas à travailler un seul jour de ta vie.
Reply

Marsh Posté le 08-05-2002 à 22:44:59   

Reply

Marsh Posté le 08-05-2002 à 23:02:59    

alors j'ai testé et je pense m'être trompé car ça ne marche pas ...
 
 
 
ça donne ça : http://mwnn.free.fr/parties.php
 
 
Comme tu peux le voir, le lien n'est pas créé, je me suis trompé où ?
 
 
je te file mon code:
 
 
 
 
<html>
<head><title>PARTIES</title>
<link rel="stylesheet" href="defaut.css">
<?
function replink($Texte) {
 $imgm = ("\\1" );
 $imggo = ("\\1://\\2" );
 $Texte = strip_tags($Texte);
 $Texte = nl2br($Texte);
 $Texte = eregi_replace("(http|https|ftp)://([[:alnum:]/\n+-=%&:_.~?]+[#[:alnum:]+]*)","<a href=\"\\1://\\2\" target=\"_blank\">$imggo</a>",$Texte);
 $Texte = eregi_replace("(([a-z0-9_]|\\-|\\.)+@([^[:spa
 
ce:]]*)([[:alnum:]-])\.([^[:space:]]*)([[:alnum:]
 
-]))", "<a href=\"mailto:\\1\">$imgm</a>", $Texte);
 return $Texte ;
}
?>

 
 
<head>
<body>
 
<br>
<div align="center"><center>
 <?php
 
    $db = mysql_connect('sql.free.fr', 'mabase', 'XXXXXX';);
 
    mysql_select_db('mabase',$db);
 
 
 
    // Affichage des teufs en FRANCE
 
 
 print "<br>";
 print "<center><b><font color=\"#FFFFFF\">.:: PARTIES IN FRANCE / TEUFS EN FRANCE ::.</font></b></center><br>";
 
 
    $sql="SELECT * FROM parties WHERE code = 'FRANCE' order by date asc";
 
    $res=mysql_query($sql, $db);
    while ($ligne=mysql_fetch_object($res))
    {
  print "<table border=\"0\" width=\"500\" cellspacing=\"0\" cellpadding=\"0\">";
  print "<tr>";
  print "<td width=\"3\" height=\"3\" bgcolor=\"#FF9900\"></td>";
  print "<td width=\"2\" height=\"3\" bgcolor=\"#FF9900\"></td>";
  print "<td width=\"487\" height=\"3\" bgcolor=\"#FF9900\"></td>";
  print "<td width=\"5\" height=\"3\" bgcolor=\"#FF9900\"></td>";
  print "<td width=\"3\" height=\"3\"></td>";
  print "</tr>";
  print "<tr>";
  print "<td width=\"3\" bgcolor=\"#FF9900\"></td>";
  print "<td width=\"2\" bgcolor=\"#FF9900\"></td>";
  print "<td width=\"487\" bgcolor=\"#FF9900\"><center>$ligne->date</center></td>";
  print "<td width=\"5\" bgcolor=\"#FF9900\"></td>";
  print "<td width=\"3\" bgcolor=\"#000000\"></td>";
  print "</tr>";
  print "<tr>";
  print "<td width=\"3\" bgcolor=\"#FFFFFF\"></td>";
  print "<td width=\"2\" bgcolor=\"#FFFFFF\" valign=\"top\"></td>";
  print "<td width=\"487\" bgcolor=\"#FFFFFF\" valign=\"top\"><br><b><center>:: $ligne->title ::</b></center></td>";
  print "<td width=\"5\" bgcolor=\"#FFFFFF\"></td>";
  print "<td width=\"3\" bgcolor=\"#000000\"></td>";
  print "</tr>";
  print "<tr>";
  print "<td width=\"3\" bgcolor=\"#FFFFFF\"></td>";
  print "<td width=\"2\" bgcolor=\"#FFFFFF\" valign=\"top\"></td>";
  print "<td width=\"487\" bgcolor=\"#FFFFFF\" valign=\"top\"><br><p align=\"justify\">::. $ligne->text</p></td>";
  print "<td width=\"5\" bgcolor=\"#FFFFFF\"></td>";
  print "<td width=\"3\" bgcolor=\"#000000\"></td>";
  print "</tr>";
  print "<tr>";
  print "<td width=\"3\" bgcolor=\"#FFFFFF\"></td>";
  print "<td width=\"2\" bgcolor=\"#FFFFFF\" valign=\"top\"></td>";
  print "<td width=\"487\" bgcolor=\"#FFFFFF\" valign=\"top\"><br><font color=\"#FF9900\">$ligne->address</font><br> </td>";
  print "<td width=\"5\" bgcolor=\"#FFFFFF\"></td>";
  print "<td width=\"3\" bgcolor=\"#000000\"></td>";
  print "</tr>";
  print "<tr>";
  print "<td width=\"3\" bgcolor=\"#FFFFFF\"></td>";
  print "<td width=\"2\" bgcolor=\"#FFFFFF\" valign=\"top\"></td>";
  print "<td width=\"487\" bgcolor=\"#FFFFFF\" valign=\"top\"><br>";
 echo replink($ligne->url);
  print "<br> </td>";
  print "<td width=\"5\" bgcolor=\"#FFFFFF\"></td>";
  print "<td width=\"3\" bgcolor=\"#000000\"></td>";
  print "</tr>";
  print "<tr>";
  print "<td width=\"3\" height=\"3\"></td>";
  print "<td width=\"2\" height=\"3\" bgcolor=\"#000000\"></td>";
  print "<td width=\"487\" height=\"3\" bgcolor=\"#000000\"></td>";
  print "<td width=\"5\" height=\"3\" bgcolor=\"#000000\"></td>";
  print "<td width=\"3\" height=\"3\" bgcolor=\"#000000\"></td>";
  print "</tr>";
  print "</table>";
  print "<br>";
    }
 
 
 
    mysql_free_result($res);
 
    mysql_close();
 ?>
 
<center><b><font color="#FFFFFF">.:: ADD A PARTIE / AJOUTER UNE TEUF ::.</font></b></center><br>
 
<table border="0" width="400" cellspacing="0" cellpadding="0">
  <tr>
    <td width="3" height="3" bgcolor="#FFFFFF"></td>
    <td width="2" height="3" bgcolor="#FFFFFF"></td>
    <td width="387" height="3" bgcolor="#FFFFFF"></td>
    <td width="5" height="3" bgcolor="#FFFFFF"></td>
    <td width="3" height="3"></td>
  </tr>
  <tr>
    <td width="3" bgcolor="#FFFFFF"></td>
    <td width="2" bgcolor="#FFFFFF" valign="top"></td>
    <td width="387" bgcolor="#FFFFFF" valign="top"><br>
    <center>
    <form method="post" action="add_parties.php">
      PARTIE'S NAME / NOM DE LA TEUF
      <br>
      <input type="text" name="title_partie" size="50" maxlenght="40">
      <br><br>
      Partie's date [YYYY/MM/DD] / Date de la teuf [AAAA/MM/JJ]
      <br>
      <input type="text" name="date_partie" size="50" maxlenght="40">
      <br><br>
      Partie's address / Adresse de la teuf
      <br>
      <input type="text" name="address_partie" size="50" maxlenght="40">
      <br><br>
      Partie's web site / Site web de la teuf
   <br>
  <input type="text" name="url_partie" size="50" maxlenght="40">
      <br><br>
   Partie's details  / Détails de la teuf
   <br>
   <font color="#FF9900" size="1">Each time you wish to make a return to the line, please type <br>  at the end, if not your text will be  
 
illegible
   <br>
   <br>
   A chaque fois que vous souhaitez faire un retour à la ligne, veuillez taper <br> à la fin, sinon votre texte sera illisible</font>
   <br>
      <textarea name="text_partie" rows="10" cols="40"></textarea>
      <br><br>
      In France or abroad ?
      <br>
      En France ou à l'étranger ?
      <br>
      <select name="code_partie" size="1">
 <option value="FRANCE">FRANCE</option>
 <option value="ABROAD">ABROAD</option>
      </select>
      <br><br>
      <input TYPE="submit" VALUE="Submit">    <input type="reset" value="Reset">
    </form></center>
    </td>
    <td width="5" bgcolor="#FFFFFF"></td>
    <td width="3" bgcolor="#000000"></td>
  </tr>
  <tr>
    <td width="3" height="3"></td>
    <td width="2" height="3" bgcolor="#000000"></td>
    <td width="387" height="3" bgcolor="#000000"></td>
    <td width="5" height="3" bgcolor="#000000"></td>
    <td width="3" height="3" bgcolor="#000000"></td>
  </tr>
</table>
 
 
</center>
 
</body>
</html>

 

[jfdsdjhfuetppo]--Message édité par DrWatson le 08-05-2002 à 23:07:05--[/jfdsdjhfuetppo]


---------------
.:: Feed-Back  ::. Choisis un travail que tu aimes, et tu n'auras pas à travailler un seul jour de ta vie.
Reply

Sujets relatifs:

Leave a Replay

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