使用相同的提交按钮进行两项操作

时间:2015-07-04 01:07:02

标签: php forms submit

我在一个简单的博客系统中工作。

我希望用户在编辑旧条目时看到更新(actualizar)并在保存新条目时保存(guardar)。

系统更新完美但保存时无效。该模型运作完美。

我试图找到错误。请帮我找到实现目标的方法

提前致谢

视图

<?php
//verificar que existe informacion del articulo
if (!isset($infoArticulo)){
    //valores para un nuevo articulo
    $idArticulo="";
    $titulo="";
    $texto="";
        $mensaje="";
        $accion="guardar";
}else{
    //valores para un articulo que existe
    $idArticulo=$infoArticulo['idArticulo'];
    $titulo=$infoArticulo['titulo'];
    $texto=$infoArticulo['texto'];
        $mensaje="";
        $accion="actualizar";
}

$vistaEditor="
<div class='editor'>    
    <form method='post' action='blog.php?inicio=editor'>
    <input type='hidden' name='idArticulo' value='$idArticulo'/>
        <fieldset>
            <legend>Escribe tu articulo</legend>
            <input type='text' name='titulo' maxlength='150' placeholder='titulo' value='$titulo' required/>
            <p id='advertencia'></p>
            <textarea name='texto' required>$texto</textarea>

            <fieldset>
                <input type='submit' name='accion' value='$accion' id='guardar'/>
                <p id='mensaje'>$mensaje</p>
            </fieldset>
        </fieldset>    
    </form>
</div>    
    <script type='text/javascript' src='js/tinymce/tinymce.min.js'> </script>
    <script type='text/javascript'>
        tinymce.init({
        selector: 'textarea',
        plugins: 'image',
        setup: function(editor){
        editor.on('change',function(e){
            actualizarMensaje();
        });


    }
});
    </script>";

return $vistaEditor;

控制器

<?php

//se envio la forma del editor
if(isset($_POST['accion'])){
        $accion=$_POST['accion'];
        //obtener titulo y texto
        $titulo=$_POST['titulo'];
        $texto=$_POST['texto'];

        //verificar si guarda o actualiza
        if($accion==="actualizar"){
            //Actualizar articulo
            $idArticulo=$_POST['idArticulo'];
            $bloggerMate->actualizarArticulo($idArticulo,$titulo,$texto);
            $idArticuloGuardado=$idArticulo;
        }else if($accion==="guardar"){
            //Guardar nuevo articulo
            $idArticuloGuardado=$bloggerMate->guardarArticulo($titulo, $texto);
        }

    //carga el contenido del articulo guardado
    if(isset($idArticuloGuardado)){
        //obtener la informacion del articulo
        $infoArticulo=$bloggerMate->obtenerinfoArticulos($idArticuloGuardado);

        //asignar variables
        $titulo=$infoArticulo['titulo'];
        $texto=$infoArticulo['texto'];

        //mensaje
        $mensaje="¡Tus cambios se guardaron!";
    }else{
        $mensaje="ups. Parece que hubo un problema al guardar. Intenta mas tarde por favor";
    }
}

//cargar articulo en el editor
if(isset($_GET['idArticulo'])){
    //obtener informacion del articulo
    $idArticulo=$_GET['idArticulo'];    
    $infoArticulo=$bloggerMate->obtenerinfoArticulos($idArticulo);

}

//Cargar vista
$salida=include_once "vista/admin/editor.php";
return $salida;
?>

0 个答案:

没有答案