Salvare/recuperare html da un db

  • Creatore Discussione Creatore Discussione IImanuII
  • Data di inizio Data di inizio

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
Salve ragazzi vi chiedo se potete postarmi un esempio di codice SICURO che consenta di salvare dell'html all'interno di un database e poi recuperarne e stamparne il contenuto.

Ho scritto il codice ma non sono sicuro che sia un codice impeccabile, per questo volevo sapere se per voi era possibile postarmi un esempio.

Grazie :)
 
[Editato]
Ciao,
ho creato una tabella "htmlcode" con 3 campi "id" con AI e Pkey (poco importate essendo solo uno il record da salvare), poi il campo "code" che contiene quello che scrivi all'interno della "textarea" ed infine il campo "num" che mi permette di stampare e sovrascrivere sempre lo stesso campo.

Questo è quello che ho scritto io (funziona) :
PHP:
<!DOCTYPE html>
<html>
<head>
	<Title>Test 05</Title>
<?php
	include "conn.php";
?>
</head>

<body>
<center>
	<div>
		<form method="post" action="#">
			<textarea name="htmlcode" rows="30" cols="50"></textarea> <br />
			<input type="submit" name="invia" value="Registra" />
			<hr />
			<input type="submit" name="stampa" value="Recupera" />
			<br>
		</form>
		
	<?php
		
			if (isset($_POST['invia'])){
				$sql="SELECT * FROM htmlcode WHERE num ='1'";
				$result = mysql_query($sql);
				$count=mysql_num_rows($result);
				
				$codice = $_POST['htmlcode'];
				
				if ($count >= 1){
					$query = mysql_query("UPDATE htmlcode SET code = '$codice' WHERE num='1'");
				}elseif ($count == 0){
					 $query = mysql_query("UPDATE htmlcode SET code = '$codice'");
				}
				
				echo "<h2>Codice inserito</h2>";
			}
			
			if (isset($_POST['stampa'])){
				$recuperadati = mysql_query("SELECT code FROM htmlcode")
					or die(mysql_error());  
				$recuperadati2 = mysql_fetch_assoc( $recuperadati );
				$codice = $recuperadati2['code'];
				
				echo "Codice recuperato : <br /> $codice <br />";
			}
	?>
	</div>
</center>
</body>

</html>
Spero sia quello che cercavi ...
 
Ultima modifica:
Ciao, grazie per la risposta. Non è esattamente quello che cercavo. Mi spiego meglio:

Il problema è solo come salvare i dati nel db.

Recupero i campi del form e uso mysql_real_escape_string

PHP:
$title=mysql_real_escape_string($_POST['title']);

Inserisco il campo nel db (sto lavorando con wordpress):
PHP:
$wpdb->update($t_options, array('title' => $title, 'msg' => $msg), array( 'id' => 1 ));

Ora quando vado a recuperare le informazioni queste mi vengono estratte con due caratteri di escape, esempio:

HTML:
<img src=\\"photo.jpg\\" alt=\\"Smiley face\\" height=\\"100\\" width=\\"100\\">

Non capisco perchè mi dia due caratteri di escape invece di uno. Per vedere il codice pulito ho scritto una funzione (che mi sembra un po forzata):
PHP:
function mq($var){
  return stripslashes(stripslashes($var));
}
echo  mq($title);

Così però mi restituisce la stringa html corretta. Non credo siano i magic quote.
 
Giuro non saprei veramente cosa dire adesso.
Aspettiamo la risposta di qualche altro utente o di un moderatore.

Comunque se tu puoi prova in locale se da lo stesso errore ... a me non sembra darlo
 

Discussioni simili