PHP文章和图像问题

PHP文章和图像问题,php,Php,这仍然不起作用,所以我现在在这里发布整个代码 <form id="contact-form" action="fileovi/dodaj_novost.php" method="post"> <fieldset> <div class="coll-1"> <div class="txt-form">Naslov[hr]</div> <

这仍然不起作用,所以我现在在这里发布整个代码

<form id="contact-form" action="fileovi/dodaj_novost.php" method="post">
          <fieldset>
            <div class="coll-1">
              <div class="txt-form">Naslov[hr]</div>
              <label class="name">
                <input type="text" name="naslov_hr">
                <br>
            </div>
            <div class="clear"></div>
            <div class="coll-1">
              <div class="txt-form">Naslov[en]</div>
              <label class="name">
                <input type="text" name="naslov_en">
                <br>
            </div>
            <div class="clear"></div>
            <div class="clear"></div>
            <div class="coll-1">
              <div class="txt-form">Naslov[de]</div>
              <label class="name">
                <input type="text" name="naslov_de">
                <br>
            </div>
            <div class="clear"></div>
            <div class="clear"></div>
            <div class="coll-1">
              <div class="txt-form">Link slike</div>
              <label class="name">
                <input type="file" name="image[]" enctype="multipart/form-data"/><br />
                <input type="file" name="image[]" enctype="multipart/form-data"/><br />
              <br>
            </div>
            <div class="clear"></div>
            <div class="clear"></div>
            <div class="coll-big">
              <div class="txt-form"><center>Tekst[hr]</center></div>
              <label class="name">
                <textarea id="tekst" name="tekst_hr"></textarea>
                <br>
            </div>
            <div class="clear"></div>
            <div class="coll-big">
              <div class="txt-form"><center>Tekst[en]</center></div>
              <label class="name">
                <textarea id="tekst1" name="tekst_en"></textarea>
                <br>
            </div>
            <div class="clear"></div>
            <div class="coll-big">
              <div class="txt-form"><center>Tekst[de]</center></div>
              <label class="name">
                <textarea id="tekst2" name="tekst_de"></textarea>
                <br>
            </div>
            <div class="clear"></div>

            <a href="javascript:;" onclick="javascript: document.getElementById('contact-form') .submit()" class="btn btn-2">Dodaj!</a>

        </form>

纳斯洛夫[hr]

纳斯洛夫[英]
纳斯洛夫[德]
链环滑环


Tekst[hr]
特克斯特[英]
特克斯特[德]
这是我创建的php函数

function dodaj_novost()
{
global $mysqli;
$mysqli->query("SET NAMES utf8");
$mysqli->query("SET CHARACTER SET utf8");
$mysqli->query("SET COLLATION_CONNECTION='utf8_general_ci'");


//sanitize variables

$naslovhr = $_POST['naslov_hr'];
$naslovhr = $mysqli->real_escape_string($naslovhr);

$nasloven = $_POST['naslov_en'];
$nasloven = $mysqli->real_escape_string($nasloven);

$naslovde = $_POST['naslov_de'];
$naslovde = $mysqli->real_escape_string($naslovde);

$teksthr = $_POST['tekst_hr'];
$teksthr = $mysqli->real_escape_string($teksthr);

$teksten = $_POST['tekst_en'];
$teksten = $mysqli->real_escape_string($teksten);

$tekstde = $_POST['tekst_de'];
$tekstde = $mysqli->real_escape_string($tekstde);


//sanitize variables END

$dan = date('d');
$mjesec = date('M');
$godina = date('Y');

$sql="INSERT INTO novosti (naslovhr, nasloven, naslovde, teksthr, teksten, tekstde, dan, mjesec, godina) VALUES ($naslovhr,$nasloven, $naslovde,$teksthr,$teksten,$tekstde,$dan,$mjesec,$godina)";
$query = $mysqli->query("$sql");


//Add picture!

    $valid_exts = array('jpeg', 'jpg', 'png', 'gif'); // valid extensions
    $max_size = 2048 * 1024; // max file size (200kb)
    $path = 'uploads/'; // upload directory

    if(isset($_FILES['image'])){
        for($i=0; $i<count($_FILES['image']['name']); $i++){
            if( @is_uploaded_file($_FILES['image']['tmp_name'][$i]) )
                {
                    // get uploaded file extension
                    $ext = strtolower(pathinfo($_FILES['image']['name'][$i], PATHINFO_EXTENSION));
                    // looking for format and size validity
                    if (in_array($ext, $valid_exts) AND $_FILES['image']['size'][$i] < $max_size)
                    {
                        // unique file path
                        $filename = uniqid(). '.' .$ext;
                        // move uploaded file from temp to uploads directory
                        if (move_uploaded_file($_FILES['image']['tmp_name'][$i], $path.$filename))
                        {
                            $status = $path.$filename;
                            $link = 'http://'.$domena.'/'.$path.'/'.$filename;
                            $upit = "INSERT INTO slike_novosti (link, id_posta) VALUES ($link, $id_posta)";
                            $upit = $mysqli->query("$upit");
                            if ($upit == 'true'){
                                echo 'Successfull!';
                            } else {
                                echo 'Not sucessfull!';
                            }
                        }
                        else {
                            $status = 'Upload Fail: Unknown error occurred!';
                        }
                    }
                    else {
                        $status = 'Upload Fail: Unsupported file format or It is too large to upload!';
                    }
                }
                else{
                        //image is not uploaded!
                        $status = ' ';
                    }

                echo '<br>'.$status.'<br>';
        }
    } else {
        echo 'Nema slike!';
    }

//Add picture END!!
函数dodaj_novost() { 全球$mysqli; $mysqli->query(“设置名称utf8”); $mysqli->query(“设置字符集utf8”); $mysqli->query(“设置排序规则”\u CONNECTION='utf8\u general\u ci'”; //清理变量 $naslovhr=$_POST['naslov_hr']; $naslovhr=$mysqli->real\u escape\u字符串($naslovhr); $nasloven=$_POST['naslov_en']; $nasloven=$mysqli->real\u escape\u字符串($nasloven); $naslovde=$_POST['naslov_de']; $naslovde=$mysqli->real\u escape\u字符串($naslovde); $teksthr=$_POST['teksthr']; $tekstr=$mysqli->real\u escape\u字符串($tekstr); $teksten=$_POST['tekst_en']; $teksten=$mysqli->real\u escape\u字符串($teksten); $tekstde=$_POST['tekstde']; $tekstde=$mysqli->real\u escape\u字符串($tekstde); //清理变量结束 $dan=日期('d'); $mjesec=日期('M'); $godina=日期('Y'); $sql=“在诺和诺士帝(纳斯洛夫、纳斯洛文、纳斯洛夫德、特克斯塔尔、特克斯滕、特克斯特德、丹、美赞臣、戈迪纳)的价值中插入($纳斯洛夫、纳斯洛文、纳斯洛夫德、特克斯塔尔、特克斯滕、特克斯特德、丹、$美赞臣、戈迪纳)”; $query=$mysqli->query($sql”); //添加图片! $valid_exts=array('jpeg','jpg','png','gif');//有效扩展名 $max_size=2048*1024;//最大文件大小(200kb) $path='uploads/';//上载目录 如果(isset($\u文件['image'])){ 对于($i=0;$iquery($upit)); 如果($upit=='true'){ 回声“成功!”; }否则{ 回声“不成功!”; } } 否则{ $status='上载失败:发生未知错误!'; } } 否则{ $status='上载失败:不支持的文件格式或文件太大,无法上载!'; } } 否则{ //图片没有上传! $status=''; } 回显“
”.$status.“
”; } }否则{ 回声“尼玛·斯莱克!”; } //添加图片结尾!! }

出于某种原因,如果有人能为我指出解决这个问题的正确方向,那么这个代码仍然不起作用……我会很高兴的!:)干杯。

首先:

$sql1 = "INSERT INTO slike_novosti (slika, link_slike) VALUES ('$link_slike','$slika')";
检查变量的顺序?我想一定是,

$sql1 = "INSERT INTO slike_novosti (slika, link_slike) VALUES ('$slika','$link_slike')";

第二:使用PDO组件,您的代码和SQL注入非常糟糕。

$variables
中删除单个qoutes。对于PHP,“$var”是一个值为$var的变量。如果您希望将其量化,请使用“$var”。看

所以这会有用的

$sql="INSERT INTO novosti (naslovhr, nasloven, naslovde, teksthr, teksten, tekstde, 
         link_slike, dan, mjesec, godina) VALUES  
         $naslovhr,$nasloven,$naslovde,$teksthr,
         $teksten,$tekstde,$link_slike,$dan,$mjesec,$godina)";

可爱的脆弱。可爱的cargo cult编程(
“$var”
)…mysql\u xxx是deprecated@BaBL86仍然不工作:你能检查一下我的全部代码吗?谢谢。插入slike_novosti$id_posta-从何处获取此变量?我认为,您需要添加上一个查询中的最后一个插入id。在使用两个好的变量进行正常插入后-检查表,它们不是空的吗?这可能是我的表单的问题,因为这if(isset($\u FILES['image'))不是真的