[RESOLU] Mémoriser un textarea dans une base Mysql

Eléphanteau du PHP | 15 Messages

03 mars 2016, 22:47

Bonjour,
J'ai ce code :
//------------------------------------Ajout message
		if($_POST['bouton']=='Ajouter')
		{
			echo"<center><table width='90%' border>
					<td align='left' width='80%'><textarea name='message' rows='10' cols='30'></textarea></td>
					<td align='center' width='20%'><input type='submit' name='bouton' value='Valider'></td>
				</tr>
			</table></center><br><br>";	
		}
		
		if($_POST['bouton']=='Valider')
		{	
			$date = date("Y-m-d");
			$sql_ajout="insert into Messages(MES_date, MES_ME_code, MES_message) values(
				'".$date."',
				'".intval($_SESSION['code'])."',
				'".$_POST['message']."')";	
				
				//echo $sql_ajout."<br>";
    		$rs_ajout=mysql_query($sql_ajout,$conn);
		}
Il y a une balise <form> bien sur. Tout fonctionne bien avec des textes courts, dès que le texte fait une certaine taille ça ne fonctionne plus. Le type de champ dans Mysql est text (65000 caractères).
Je ne comprends pas pourquoi !
Merci si vous avez une idée
Guy

Mammouth du PHP | 2703 Messages

03 mars 2016, 23:40

probablement des ' dans le texte quand cela ne marche pas, et une absence quand cela fonctionne.

Eléphanteau du PHP | 15 Messages

04 mars 2016, 10:29

Bonjour et merci, c'est bien ça, j'ai ajouté :
$message=mysql_real_escape_string($_POST['message']);
et ça fonctionne.
Merci encore