繁体   English   中英

表单操作未重定向到php文件

[英]Form action is not redirecting to a php file

我正在通过在工作中克隆另一个网站来创建一个新网站,但我没有创建或编码它。

所以,我的问题是:该站点正在运行,但是图像上传不正常,我没有意识形态。 我尝试了很多方法来解决该问题,例如,在变量var_dump中尝试调试。 这是代码:

<? require_once("header.php"); ?>
<? require_once("menu.php"); ?>
<? require_once("ConnFile.php"); ?>

<?

if ($_GET["acao"] == "excluir")  
{
    $Tabela = "BannerHome";
    $TabelaChave = "idBanner";

 if( is_numeric($_GET["k"])) 
 {
    $txtIdProduto = $_GET["k"];
    $acao = ("UPDATE   $Tabela SET Imagem".  $_GET["I"] . " = ''  WHERE $TabelaChave =  $txtIdProduto ");

    if(mysqli_query($link, $acao)) {
        echo '<div class="alert alert-success alert-dismissible"" role="alert">  <button type="button" class="close" data-dismiss="alert"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button> Registro removido com sucesso</div>';
    } else {
        echo '<div class="alert alert-danger alert-dismissible"" role="alert">  <button type="button" class="close" data-dismiss="alert"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button> Não foi possível remover o registro. </div>';
    } 
 }
}

?>
<?
$id = 0;
if( is_numeric($_GET["k"])) {
    $id = $_GET["k"];
} 

 $DadosProduto = mysqli_fetch_array( mysqli_query($link, "SELECT * FROM BannerHome WHERE idBanner = " . $id ));

?>

<? if( $DadosProduto["Imagem" . $_GET["I"]] == "" ) { print '<div class="alert alert-warning alert-dismissible"" role="alert">  <button type="button" class="close" data-dismiss="alert"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button> Este banner ainda não possui imagem cadastrada. </div>'; } ?>

<?


    ?>

<link href="upload/assets/css/style.css" rel="stylesheet" />
<h4>Banner home<small> / Imagems / <?=$DadosProduto["Titulo"]; ?> </small></h4>


<form class="form-horizontal" role="form" id="upload" action="upload/uploadHome.php?k=<?=$id; ?>&I=<?=$_GET['I']; ?>" method="post"  enctype="multipart/form-data">
    <div id="drop">
    <pre>
    <center>
            Arreste as imagens (Fundo 1920x400, Superior 420x40)
            <br>
            ou
            <br>
            <a class="btn btn-primary btn-lg" >Selecione as imagens</a>
                <input type="file" name="upl" multiple  />
            </div>

    </center>
    </pre>
            <ul>
                <!-- The file uploads will be shown here -->
            </ul>   
    <div style="clear:both";>
<?

 var_dump($DadosProduto);

if($DadosProduto["Imagem" . $_GET["I"]] != "" ) {

    print '<div class="panel panel-default" style="width:145px; float:left; margin-right:4px;">';
    print ' <div class="panel-body">';
    print '     <img src="../gdThumb.php?imagem=' . $DadosProduto["Imagem" . $_GET["I"]] . '" alt=""  class="img-thumbnail">';
    print ' </div>';
    print ' <div class="panel-footer"><center><a href="?acao=excluir&k='. $DadosProduto["idBanner"] .'&I='. $_GET["I"] .'"><span class="glyphicon glyphicon-remove"></span> Remover</a></center></div>';
    print '</div> ';

}


?> 
  </div>
</form>

        <script src="upload/assets/js/jquery.knob.js"></script>

        <!-- jQuery File Upload Dependencies -->
        <script src="upload/assets/js/jquery.ui.widget.js"></script>
        <script src="upload/assets/js/jquery.iframe-transport.js"></script>
        <script src="upload/assets/js/jquery.fileupload.js"></script>

        <!-- Our main JS file -->
        <script src="upload/assets/js/script.js"></script>

<? require_once("footer.php"); ?>

我认为问题出在形式上

<form class="form-horizontal" role="form" id="upload" action="upload/uploadHome.php?k=<?=$id; ?>&I=<?=$_GET['I']; ?>" method="post"  enctype="multipart/form-data">

因为存在上载文件夹,而php文件也存在。 但是,当表单调用此操作时,什么也不会发生。 我尝试使用:var_dump,die(),echo,很多东西来查看简单的反应。 我无法调试uploadHome.php,不知道为什么。

connFile.php正在工作

因此,我需要调用此页面来存储我的图像,而该页面没有被调用。 这是uploadHome.php:

<? require_once("../ConnFile.php"); ?>
<?php
$idProduto = $_GET["k"];
// A list of permitted file extensions
$allowed = array('png', 'jpg', 'gif','zip');

if(isset($_FILES['upl']) && $_FILES['upl']['error'] == 0){

    $extension = pathinfo($_FILES['upl']['name'], PATHINFO_EXTENSION);

    if(!in_array(strtolower($extension), $allowed)){
        echo '{"status":"error"}';
        exit;
    }
    $arquivo = 'BannerHome_'. $_GET["k"]  . '_'  . rand(1,1500) . '-' . md5($_FILES['upl']['name']) . "." . $extension;
    if(move_uploaded_file($_FILES['upl']['tmp_name'], '../../img/produto/'. $arquivo)){

        mysqli_query($link, "UPDATE BannerHome SET Imagem". $_GET['I'] ." =  '$arquivo' WHERE idBanner = " . $_GET["k"]);

        echo '{"status":"success"}';
        exit;
    }
}

echo '{"status":"error"}';
exit;

您能提供给我的任何信息将不胜感激,因为我不知道该怎么办。

我的权限错误。 我看不到错误,因为ajax没有向我显示任何内容。

如果有人遇到类似问题,则检查和更改目录权限可能会有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM