El problema es que tengo dos botones para un mismo formulario, el cual realiza una función u otra dependiendo de si he hecho submit en "publica" (esto enviaría "mitxt" y además $_POST[form]== publica) o por el contrario tan solo he enviado "mitxt", en este caso $_POST[form]==mitxt). Como véis para cada caso, dependiendo del valor de $_POST[form] haría la función pertinente.
Dentro de guardar.php controlo si $_POST[form] == publica o bien si $_POST[form] == mitxt y para cada caso ejecuto una función distinta. Funciona perfectamente. ¿El problema? que la página se me recarga debido a que utilizo php y recojo el POST de esta manera:
editahoja.php
Código PHP:
<?php
if(isset($_POST['form'])){
include("guardar.php");
}
?>
Código ajax que en teoría envía por POST sin recargar la página:
Código PHP:
<script language="javascript">
$(document).ready(function() {
// Interceptamos el evento submit
$('#form, #fat, #formulario').submit(function() {
// Enviamos el formulario usando AJAX
$.ajax({
type: 'POST',
url: $(this).attr('action'),
data: $(this).serialize(),
// Mostramos un mensaje con la respuesta de PHP
success: function(data) {
$('#result').html(data);
}
})
return false;
});
})
</script>
formulario utilizado en editahoja.php:
Código PHP:
<form method="post" action="editahoja.php" id="formulario" name="formulario"><br />
<input type="hidden" value="mitxt" name="form"/>
<input type="submit" name="form" value="publica" onclick="alerta()">
<textarea id="mitxt" resize="none" name="mitxt"></textarea>
<!-- Reemplazamos el textarea con el editor ckEditor-->
<script type="text/javascript">
CKEDITOR.replace( 'mitxt',
{
toolbar :
[
['Source','-','Save','NewPage','Preview','-','Templates'],
['Cut','Copy','Paste','PasteText','PasteFromWord','-','Print', 'SpellChecker', 'Scayt'],
['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
['Bold','Italic','Underline','Strike','-','Subscript','Superscript'],
['NumberedList','BulletedList','-','Outdent','Indent','Blockquote'],
['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],
['Link','Unlink'],
['Image','Table','HorizontalRule','SpecialChar','PageBreak'],
'/',
['Styles','Format','Font','FontSize'],
['TextColor','BGColor'],
['Maximize', 'ShowBlocks']
],
/* Buscador de archivos */
filebrowserBrowseUrl : '/PRUEBAS/ckfinder/ckfinder.html',
filebrowserImageBrowseUrl : '/PRUEBAS/ckfinder/ckfinder.html?type=Images',
filebrowserFlashBrowseUrl : '/PRUEBAS/ckfinder/ckfinder.html?type=Flash',
filebrowserUploadUrl : '/PRUEBAS/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files',
filebrowserImageUploadUrl : '/PRUEBAS/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images',
filebrowserFlashUploadUrl : '/PRUEBAS/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash',
<!-- Codigo para añadir el administrador de ficheros que nos permite subir imágenes al servidor -->
<!--filebrowserBrowseUrl : '/PRUEBAS/plugins/filemanager/index.php',-->
uiColor : '#9AB8F3'
});
</script>
</div>
</form><div id="result"></div>