Salve a tutti!
Ho questo form
e questa richiesta javascript via jQuery:codice:<form method="post" name="ins_news" id="ins_news"> <label>Titolo:</label><input type="text" maxlength="40" id="titolo" name="titolo" size="50" /> <label>Corpo del messaggio:</label> <textarea id="areapress" name="areapress" rows="10" cols="50" style="width: 100%"></textarea> <input type="submit" id="invio" value="Invia" /> </form>
e per finire questo codice php (che sarebbe ins_news):codice:$(document).ready(function() { $("#ins_news").submit(function(){ testo = xinha_editors.areapress.getEditorContent(); testo = testo.replace(/\s| |<\/?p>|<\/p>|<br \/>/, ""); testo = $.trim(testo); titolo = ins_news.titolo.value; if(testo == "" || titolo.length == 0) { alert("Bisogna inserire titolo e corpo del messaggio!"); return false; } else { var dataString = 'titolo='+ titolo + '&areapress=' + testo; $.post("ins_news.php", dataString, function(data) { if(data=="conferma") alert("OK"); ///<- QUI SECONDO ME STA IL PROBLEMA }, "html"); } // return true; }); });
Le connessioni al db funzionano perfettamente... infatti, effettivamente il contenuto di titolo e di testo viene inserito nel db. Quello che però non riesco a fare, è fornire una risposta.codice:$titolo = mysql_escape_string($_POST['titolo']); $testo = mysql_escape_string($_POST['areapress']); $dataora = (date("y-m-d")); mysql_select_db("smoc_db"); if (mysql_query("INSERT INTO press(testo, titolo, dataora) VALUES ('$testo', '$titolo', '$dataora')") or die(mysql_error())) { $result = "conferma"; $conn->disconnetti(); } else { $result = "errore"; $conn->disconnetti(); } echo $result;
Mi spiego.
Se guardate il codice che ho postato, nella richiesta $.post faccio un controllo in caso di "success". Solo che a me non sembra proprio entrare in "success", infatti non mostra alcun alert. Però nel db viene inserito tutto, per cui non è un problema di php. Come posso fare? Con ajax puro ci sarebbe la responseRequest, ma con jQuery.post?
Grazie a tutti!
Spero di essere stato chiaro!

Rispondi quotando