Articoli troppo lunghi da inviare?

Ciao ragazzi, non capisco perchè, se invio articoli di una certa lunghezza al database, tramite un form e un codice da me sviluppati, l'operazione da come risultato errore.

Il codice è:

<form name="mioform" action="" method="post">

Titolo<br /><div class="spazio_20"></div>

<textarea name="titolo" cols="40" method"post"></textarea>

<br /><div class="spazio_20"></div>

Testo

<br /><div class="spazio_20"></div>

<textarea name="testo" onKeyUp="Scrivi(tag)" cols="40" rows="20"></textarea><br><br>

<input type="button" value="B" onClick="document.mioform.testo.value+='<b></b>'">

<input type="button" value="I" onClick="document.mioform.testo.value+='<i></i>'">

<input type="button" value="U" onClick="document.mioform.testo.value+='<u></u>'">

<input type="button" value="a capo" onClick="document.mioform.testo.value+='<br />'">

<input type="button" value="immagine" onClick="document.mioform.testo.value+='<img src=images/   />'">

<br /><div class="spazio_20"></div>Autore

<div class="spazio_20"></div>

<select name="autore">

<option>mastro</option>

<option>teo</option>

<option>fra</option>

</select>

<br /><div class="spazio_20"></div>

categoria <br />

<select name="categoria">

<option>cat1</option>

<option>cat2</option>

<option>cat3</option>

</select>

<div class="spazio_20"></div>

<input name="invia" type="submit" value="Submit"  />

<input name="invia" type="reset" value="reset"  />

</form>

  </center>

<?php if (isset($_POST['testo']))

{$titolo=$_POST['titolo'];

 $testo=$_POST['testo'];

 $autore=$_POST['autore'];

 $categoria=$_POST['categoria'];

$institolo="INSERT INTO tabella SET titolo='$titolo',

         data=CURDATE(),

         testo='$testo',

         autore='$autore',

         categoria='$categoria'";

if(@mysql_query($institolo)){echo 'perfetto';}

else{echo 'sbagliato';

}

}

?>

inviato 6 anni fa
cacciavitepitagorico
X 0 X

Innanzitutto, filtra le stringhe che passi a php.

Secondariamente, che tipo di errore ti vien restituito ? Ti vien archiviato il record ma questi e' "tagliato" ? E' restituito un responso di errore da php ? Altro ?

risposto 6 anni fa
s.rotondo
X 0 X

Mi viene appunto fuori la scritta "sbagliato", e non viene inserito l'articolo.

risposto 6 anni fa
cacciavitepitagorico
X 0 X

Per cominciare, togli questa robaccia:

if(@mysql_query($institolo)){echo 'perfetto';}
else{echo 'sbagliato';
}

E prova così:

mysql_query($institolo)or die(mysql_error());

A questo punto dovrebbe comparire un errore un po piu' dettagliato :)

Rileggendo il codice, noto che hai errato la sintassi sql della query di tipo insert, devi semplicemente sistemare quella.

risposto 6 anni fa
s.rotondo
modificato 6 anni fa
X 0 X

in che senso ho sbagliato la sintassi? quando metto poche parole di testo lui mi inserisce tutti i campi.

risposto 6 anni fa
cacciavitepitagorico
X 0 X

Allora:

inserendo la tua riga mi viene

Errore di sintassi nella query SQL vicino a 'umanità» è fondata sul fatto che «la storia è "abitata" dalla Sapienza di D' linea 3

fra gli apostrofi c'è  una parte di testo che ho inviato (il testo l'ho preso a caso dal sito del corriere)

risposto 6 anni fa
cacciavitepitagorico
X 0 X

HO RISOLTO scrivendo

$institolo="INSERT INTO tabella (titolo, data, testo, autore, categoria) VALUES ('$titolo', '$date', '$testo', '$autore', '$categoria')";

risposto 6 anni fa
cacciavitepitagorico
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda