str_replace avec bd

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : str_replace avec bd

par ouckileou » 13 sept. 2005, 21:34

quel est le problème exactement ?

le str_replace ? quel rapport avec la requête ?
à un moment tu m'as dit ne pas récupérer les variables du formulaire, ça marche maintenant ??

je te donne une piste pour ne pas mélanger POST et GET, et tu réponds "c'est les pseudos frames", ça ne nous avance pas et je ne vois pas le rapport

et pourquoi ce post est-il marqué Résolu alors qu'il ne l'est pas ?
bref, tu peux repréciser un peu là ?

par Truc » 13 sept. 2005, 18:49

salut, c'est peut etre le nom de ta table qui cloche:
$table_gbook_censure
:arrow: avec un $ ?!?

par isitien » 13 sept. 2005, 13:04

quand je fais ca:
$message = str_replace("con","***",$message); 
la methode marche, j'ai essayé de faire ca, mais je pense que quelque chose cloche en mon $sqlcensure
$sqlcensure = 'SELECT * FROM $table_gbook_censure where $word = $remplacement ORDER BY id DESC';

par isitien » 12 sept. 2005, 22:18

"index.php?menu=VerifyGBookCensure"
c'est les pseudo frames

par ouckileou » 12 sept. 2005, 22:13

il est marqué dans ton code : view.php
qu'est-ce que c'est ? le nom du fichier qui récupère le formulaire ?

car le formulaire pointe sur "index.php?menu=VerifyGBookCensure"

de plus, pour être sûr, ne mélange pas méthode POST et GET
si tu fais passer ton formulaire en POST, rajoute un champ caché pour passer le menu :

Code : Tout sélectionner

<input type="hidden" name="menu" value="VerifyGBookCensure">

par isitien » 12 sept. 2005, 22:04

ca me parait que tout est bon mais je sais pas pourquoi ca marche pas

par isitien » 12 sept. 2005, 14:46

non je les recupere pa

par ouckileou » 12 sept. 2005, 14:42

avant de faire le str_replace, est-ce que déjà tu récupères bien les 2 valeurs du formulaire ?
fais des echo de contrôle

par isitien » 12 sept. 2005, 14:28

form.php
<form action="index.php?menu=VerifyGBookCensure" method="post" name="form">
<table width="100%"  class="DivStyle2">
  <tr>
    <td width="40%" align="right">Word:</td>
	<td width="60%"><input type="text" name="word" maxlength="30" size="20" value="" class="input01"></td>
	</tr>
	<tr>
     <td width="40%" align="right">Replace with:</td>
	<td width="60%"><input type="text" name="replacement" maxlength="30" size="20" value="" class="input01"></td>
  </tr>
  <tr>
  <td colspan="2" align="center">
    <input type="submit" value="Send" class="input02">
  </td>
  </tr>
  </table>
</form>
<br>
<?php
$connection = mysql_connect($host, $user, $pass) or die(mysql_error());
$db = mysql_select_db($db_name, $connection) or die(mysql_error());
$sql = "select * from $table_gbook_censure order by id DESC";
$result = mysql_query($sql,$connection) or die(mysql_error());
?>
<table width="100%" class="DivStyle2" border="1" style="border-collapse:collapse">
  <tr>
<td width="20%" align="left">Date</td>
<td width="20%" align="left">Word</td>
<td width="20%" align="left">Replacement</td>
<td width="40%" align="center">Actions</td>
	</tr>
<?php
	while($row = mysql_fetch_array($result)) {
	
$date = $row['date'];
$hour = $row['hour'];
$word = $row['word'];
$replacement = $row['replacement'];
?>
<tr>
<td width="20%" align="left"><?php echo "$date"; ?> &nbsp; <?php echo "$hour"; ?></td>
<td width="20%" align="left"><?php echo "$word"; ?></td>
<td width="20%" align="left"><?php echo "$replacement"; ?></td>
<td width="40%" align="right">Update &nbsp; Delete</td>
</tr>
<?php
}
?>
</table>
view.php:

if(isset($_POST['word'])) $word = $_POST['word'];
else $word = '';
if(isset($_POST['replacement'])) $replacement = $_POST['replacement'];
else $replacement = '';

.
.
.

$message = str_replace($word,$replacement,$message); 

?>


par ouckileou » 12 sept. 2005, 13:58

il faudrait en savoir un peu plus

à quoi ressemble tout ton formulaire ?
comment récupères-tu les valeurs de celui-ci dans le script ?

un de tes champs s'appelle "remplacer" et tu utilises ensuite une variable $replacer, cela vient peut-être de là

str_replace avec bd

par isitien » 12 sept. 2005, 13:44

salut,

j'ai une forme pour remplacer les mots cebsurés avec un autre mot:

Code : Tout sélectionner

<input type="text' name="mot"...> <input type="text' name="remplacer"...>
je fais l'insertion dan la bd et je fais la recuperation comme si:
<?php
$message = str_replace($mot,$replacer, $message); 
?>
mais ca fonctionne pas, aucune erreur mais le mot reste le mem

merci