Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用相同的提交按钮执行两个操作_Php_Forms_Submit - Fatal编程技术网

Php 使用相同的提交按钮执行两个操作

Php 使用相同的提交按钮执行两个操作,php,forms,submit,Php,Forms,Submit,我在一个简单的博客系统中工作 我希望用户在编辑旧条目时看到更新(Realizar),在保存新条目时看到保存(guardar) 系统完全更新,但保存时不工作。这个模型工作得很好 我试图找出错误。请帮我找到实现目标的方法 提前谢谢 视图 <?php //verificar que existe informacion del articulo if (!isset($infoArticulo)){ //valores para un nuevo articulo $idArti

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

我希望用户在编辑旧条目时看到更新(Realizar),在保存新条目时看到保存(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;

代码似乎很好。您是否收到某种错误?也许问题出在$bloggerMate类中?$bloggerMate工作得很好。我已经测试过了。你有什么建议可以用另一种方式来实现吗?那么,这个类工作得很完美,而且你的代码似乎是合法的。那为什么不工作呢?尝试保存时是否显示任何类型的错误?是的,我已找到错误。它与tinyMCE和JS有关。我从这里得到了答案。谢谢代码看起来很好。您是否收到某种错误?也许问题出在$bloggerMate类中?$bloggerMate工作得很好。我已经测试过了。你有什么建议可以用另一种方式来实现吗?那么,这个类工作得很完美,而且你的代码似乎是合法的。那为什么不工作呢?尝试保存时是否显示任何类型的错误?是的,我已找到错误。它与tinyMCE和JS有关。我从这里得到了答案。谢谢
<?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;
?>