PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 07-07-2011 17:03:35

tomp6kopat
Membre
Inscription : 30-06-2011
Messages : 1

Un souci avec "eregi_replace()"

Salut, je suis un peut novice dans la matière j'essaye de faire un forum le problème c'est que un des terme utilisé a sa réalisation n'est plus utilisé je souhaiterais donc pouvoir la convertir pourriez vous me donné un coup de main ou me mettre sur la bonne voie ??????? merci

j'ai une erreur avec le code "eregi_replace()" comme il n'est plus utilisé avec php5
je sais qu'il faut utilisé "preg_replace()" mais n'y arrive pas
voicie le code


// connexion à la base de données
$db = mysql_connect($host, $login, $password) or die(showError('1', mysql_error()));
mysql_select_db($base,$db) or die(showError('2', mysql_error()));

// on récupère les infos du message original
$sql = 'SELECT nom,email,date_verif,texte,lect,titre FROM light_forum_tbl';
$sql.= ' WHERE id="'.mysql_escape_string($id).'"';
$res = mysql_query($sql) or die(showError('3', mysql_error()));
if (mysql_num_rows($res)>0) {
  list($nam,$mai,$dateheure,$tex,$lec,$tit) = mysql_fetch_row($res);

  $nam = stripslashes($nam);
  if ($modeAntiSpam) {
    $mai = str_replace('@', '_at_', strtolower($mai));
  }
  $mai = htmlspecialchars($mai);
  $tit = ucfirst(htmlspecialchars(stripslashes($tit)));
  $tex = nl2br(htmlspecialchars(stripslashes($tex)));
  $tex = eregi_replace('([[:alnum:]]+)://([^[:space:]]*)([[:alnum:]#?/&=])', '<a href="\\1://\\2\\3" target="_blank"><font color="'.$link_color.'">\\1://\\2\\3</font></a>',$tex);
  // conversion date
  $timestamp = strtotime($dateheure);
  $date = date('d-m-Y',$timestamp);
  $heure = date('H:i',$timestamp);
 
  // affichage tableau haut
  echo '<div align="',$align,'"><table border="0" cellpadding="2" cellspacing="0" width="',$largeur,'">';
  echo '<table border="0" cellpadding="0" cellspacing="0" width="',$largeur,'">';
  echo '<tr><td>';
  echo '<table border="0" cellpadding="1" cellspacing="0" width="',$largeur,'" bgcolor="',$color_cadre,'">';
  echo '<tr><td width="100%">';
  echo '<table border="0" cellpadding="0" cellspacing="0" width="',$largeur,'" bgcolor="white">';
  echo '<tr><td width="100%">';
  echo '<table border="0" cellpadding="2" cellspacing="0" width="',$largeur,'">';
  echo '<tr><td bgcolor="',$titre_bgcolor,'"><font face="',$titre_face,'" size="',$titre_size,'" color="',$titre_color,'">Message original de ',$nam,'</font></td>';
  echo '<td bgcolor="',$titre_bgcolor,'"><p align="right"><font face="verdana" size="1" color="',$titre_color,'">Déjà lu ',$lec,' fois avant vous </font></td></tr>';
  echo '<tr><td bgcolor="',$back_color,'" colspan="2">';
  echo '<font face="',$hfont_face,'" size="',$hfont_size,'" color="black">Email    : <a href="mailto:',$mai,'">',$mai,'</a><br>';
  echo 'Posté le : ',$date,' à ',$heure,'<br>';
  echo 'Titre    : <b>',$tit,'</b><br><br>',$tex,'</td></tr>';

  // affichage tableau bas
  echo '</center></td></tr></table></td></tr></table></td></tr></td></tr></table>';
  echo '</table></center></div><br>';
 
  // on récupère les réponses au message
  $sql = 'SELECT nom,email,date_verif,texte,titre FROM light_forum_tbl WHERE ';
  $sql.= ' reponse_a_id="'.mysql_escape_string($id).'" ORDER BY date_verif';
  $res = mysql_query($sql) or die(showError('3', mysql_error()));
  $nb = mysql_num_rows($res);

  $i=0;
  if ($nb>0) {
    while(list($nom,$email,$dateheure,$texte,$titre) = mysql_fetch_row($res)) {
      $nom = stripslashes($nom);
      if ($modeAntiSpam) {
        $email = str_replace('@', '_at_', strtolower($email));
      }
      $titre = ucfirst(htmlentities(stripslashes($titre)));
      $texte = nl2br(htmlentities(stripslashes($texte)));
      $texte = eregi_replace('([[:alnum:]]+)://([^[:space:]]*)([[:alnum:]#?/&=])', '<a href="\\1://\\2\\3" target="_blank"><font color="'.$link_color.'">\\1://\\2\\3</font></a>',$texte);
 
      // conversion date
      $timestamp = strtotime($dateheure);
      $date = date('d-m-Y',$timestamp);
      $heure = date('H:i',$timestamp);
 
      // affichage tableau haut
      echo '<div align="',$align,'"><table border="0" cellpadding="2" cellspacing="0" width="',$largeur,'">';
      echo '<table border="0" cellpadding="0" cellspacing="0" width="',$largeur,'">';
      echo '<tr><td>';
      echo '<table border="0" cellpadding="1" cellspacing="0" width="',$largeur,'" bgcolor="',$color_cadre,'">';
      echo '<tr><td width="100%">';
      echo '<table border="0" cellpadding="0" cellspacing="0" width="',$largeur,'" bgcolor="white">';
      echo '<tr><td width="100%">';
      echo '<table border="0" cellpadding="2" cellspacing="0" width="',$largeur,'">';
      echo '<tr><td bgcolor="',$titre_bgcolor,'"><font face="',$titre_face,'" size="',$titre_size,'" color="',$titre_color,'">Réponse de ',$nom,'</font></td></tr>';
      echo '<tr><td bgcolor="',$back_color,'">';
      echo '<font face="',$hfont_face,'" size="',$hfont_size,'" color="black">Email    : <a href="mailto:',$email,'">',$email,'</a><br>';
      echo 'Posté le : ',$date,' à ',$heure,'<br>';
      echo 'Titre    : <b>',$titre,'</b><br><br>',$texte,'</td></tr>';
      // affichage tableau bas --------------
      echo '</center></td></tr></table></td></tr></table></td></tr></table></td></tr>';
      echo '</table></center></div><br>';
      $i++;
    }
  }


edit modo : ET K'SA SAUTE

Dernière modification par tomp6kopat (07-07-2011 17:24:18)

Hors ligne

#2 08-07-2011 05:04:21

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : Un souci avec "eregi_replace()"

Au niveau orthographe, syntaxe et grammaire (au moins 10 fautes en cinq lignes) un émule de Moogli, je présume ?

Si tu as écrit ce code dans une ancienne version de PHP, je présume que tu sais ce qu'il est censé faire.
Alors explique-nous.
Bien poser le problème, c'est le résoudre à 99%.


Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

Pied de page des forums