ciao a tutti ho 2 pagine una per inserire e l'altra per aggiornare articoli inseriti in mysql tramite form con editor WYSIWYG il campo del testo è di tipo longtext vi anticipo che ho provato ad impostarlo anche text ma non cambia nulla.
queste sono le 2 pagone ( forse ci sarà del codice inutile ma quello lo toglierò poi)
insert.php ( per inserire i nuovi articoli)
Codice PHP:
<html>
<head>
<title>Form dati</title>
<title>Replace Textareas by Class Name — CKEditor Sample</title>
<meta content="text/html; charset=utf-8" http-equiv="content-type" />
<script type="text/javascript" src="ckeditor/ckeditor.js"></script>
<script src="sample.js" type="text/javascript"></script>
<link href="sample.css" rel="stylesheet" type="text/css" />
</head>
<body>
<?php echo" <form method=\"POST\" action=\"inviainsert.php\" enctype=\"multipart/form-data\">"; ?>
<div>posizione menu'</div>
<div>
superiore<input type="radio" name="pmenu" value="1"
laterala<input type="radio" name="pmenu" value="2"
calendario<input type="radio" name="pmenu" value="3"
/>
</div>
<div>titolo menu'</div>
<div><input name="tmenu" type="text" value=""></div>
<div>Immagine di copertina (valida solo per il menu' laterale)</div>
<div><input name="file2" type="file" value="" /></div>
<div>titolo pagina</div>
<div><input name="ttesto" type="text" value=""></div>
<div><script type="text/javascript" src="/admin/Scripts/fckeditor/fckeditor.js"></script>
<script type="text/javascript">
var oFCKeditor = new FCKeditor('INS_ARTICOLO');
oFCKeditor.BasePath = "/admin/Scripts/fckeditor/"; oFCKeditor.InstanceName = "INS_ARTICOLO";
oFCKeditor.Width = "650px"; oFCKeditor.Height = "400px";
oFCKeditor.Create();
</script></div>
<input type=submit value=Inserisci nuovi dati>
</form>
</table>
</body>
</html>
e la pagina update.php che uso per modificare gli articoli ( il link sarà poi x esempio update.php?id=xx dove xx è l 'id dell'articolo da modificare in modo tale che compili i campi del form on i dati attuali dell'articolo)
Codice PHP:
<html>
<head>
<title>Form dati</title>
<title>Replace Textareas by Class Name — CKEditor Sample</title>
<meta content="text/html; charset=utf-8" http-equiv="content-type" />
<script type="text/javascript" src="ckeditor/ckeditor.js"></script>
<script src="sample.js" type="text/javascript"></script>
<link href="sample.css" rel="stylesheet" type="text/css" />
</head>
<body>
<?php
$conn=mysql_connect("*********", "*********", "*********");
if (!$conn)
{
die("Connessione a Mysql non riuscita " . mysql_error());
}
$db=mysql_select_db("*********", $conn);
if (!$db)
{
die("Connessione al Database non riuscita " . mysql_error());
}
?>
<?php
$Risultato=mysql_query("select * from pages WHERE id = '" . $_GET['id'] . "' ", $conn);
if (!$Risultato)
{
die("La tabella selezionata non esiste " . mysql_error());
}
while ($riga=mysql_fetch_array($Risultato))
{
$pmenu = "" . $riga['pmenu'] . "" ;
$tmenu = "" . $riga['tmenu'] . "" ;
$immagine = "" . $riga['immagine'] . "" ;
$ttesto = "" . $riga['ttesto'] . "" ;
$testo = "" . $riga['testo'] . "" ;
}
mysql_close();
?>
<?php echo" <form method=\"POST\" action=\"inviaupdate.php?id=" .$_GET['id']. "\" enctype=\"multipart/form-data\">"; ?>
<div>posizione menu'</div>
<div>
superiore<input type="radio" name="pmenu" value="1"
<?php
//specifico il valore della variabile $tempo
//Costruisco la condizione
if ($pmenu == "1"){
echo "checked=\"checked\"";
}
?>
/>
laterala<input type="radio" name="pmenu" value="2"
<?php
//specifico il valore della variabile $tempo
//Costruisco la condizione
if ($pmenu == "2"){
echo "checked=\"checked\"";
}
?>
/>
laterala<input type="radio" name="pmenu" value="3"
<?php
//specifico il valore della variabile $tempo
//Costruisco la condizione
if ($pmenu == "3"){
echo "checked=\"checked\"";
}
?>
/>
</div>
<div>titolo menu'</div>
<div><input name="tmenu" type="text" value="<?php echo "$tmenu"; ?>"></div>
<div>Immagine di copertina (valida solo per il menu' laterale)</div>
<div><input name="file2" type="file" value="<?php echo "$immagine"; ?>" /></div>
<div>titolo pagina</div>
<div><input name="ttesto" type="text" value="<?php echo "$ttesto"; ?>"></div>
<div><script type="text/javascript" src="../admin/Scripts/fckeditor/fckeditor.js"></script>
<script type="text/javascript">
var oFCKeditor = new FCKeditor('INS_ARTICOLO');
oFCKeditor.BasePath = "../admin/Scripts/fckeditor/"; oFCKeditor.InstanceName = "INS_ARTICOLO";
oFCKeditor.Value = "<?php echo"" . $testo. "";?>";
oFCKeditor.Width = "650px"; oFCKeditor.Height = "400px";
oFCKeditor.Create();
</script></div>
<input type=submit value=Inserisci nuovi dati>
</form>
</table>
</body>
</html>
la pagina di inserimento funziopna sempre quella di update invece ha dei problemi che ho capito ma che non riesco a risolvere.
il problema sta nel fatto che la pagina di insert ha l'editor visivo ma quazndo inserisci i valori in mysql oltre ad usare i valori
per distinguere le varie righe va proprio a capo nella casella quindi scrive ad esempio
codice:
linea 1 </P>
linea 2 </P>
linea 3 </P>
invece che
codice:
linea 1 </P>
linea 2 </P>
linea 3 </P>
e questo da problemi a l'editor visuale nella pagina di update che scompare proprio perchè il codice che deve visualizzare è scritto su più righe se io invece vado in mysql e modifico il codice manualmente portandolo su una sola riga quindi da
codice:
linea 1 </P>
linea 2 </P>
linea 3 </P>
a
codice:
linea 1 </P>
linea 2 </P>
linea 3 </P>
quando apro la pagina di update vedo l'editor visuale ed il testo è formattato correttamente.
in sintesi quello che devo fare io è che la pagina di insert inserisca il codice su una sola riga e non su 2 o più oppure nella pagina di update devo prelevarlo in modo che sia così
codice:
"
linea 1 </P>" +
"
linea 2 </P>" +
"
linea 3 </P>"
quindi con i " a inizio e fine e con il simbolo + alla fine o in qualsiasi altro modo, l'importante e che si riesca ad utilizzare la pagina di update!
grazie a tutti e se non sono stato chiaro mi scuso e vi prego di segnalarmelo in modo che possa rispiegarvi meglio cosa c'è che non va!
grazie a tutti!!