当另一列值更改时,列上的PHP / Mysql输入值变为null

时间:2017-05-01 11:24:39

标签: php mysql database

我只是在我的db表上扩展一列。所以我尝试将数据放在该表上。我在那张桌子上还有10个专栏。列名为_source_,如果其值为1,则我的新列正确输入数据。但如果它的值变为2,那么我的新列显示为null。我检查并重新检查过去两天的功能。我无法理解我所缺少的东西!

这是我的全功能PHP代码:

function regular_upload($inputname, $ftp_server){
        global $site_url;
        $ok=1;
        $upload_name = $inputname;
        // AICI VERIFICAM DACA A FOST ADAUGATA O FILA
        if (!isset($_FILES[$upload_name])) {
            //header('Location: index.php');
            echo 'No upload found in \$_FILES for ' . $upload_name;
            $ok=0;
            //exit();
        } else if (isset($_FILES[$upload_name]['error']) && $_FILES[$upload_name]['error'] != 0) {
            // echo $uploadErrors[$_FILES[$upload_name]['error']];
            echo "<p class='error'>No files</p>";
            $ok=0;
            //exit();
        } else if (!isset($_FILES[$upload_name]['tmp_name']) || !@is_uploaded_file($_FILES[$upload_name]['tmp_name'])) {
            echo "<p class='error'>Upload failed is_uploaded_file test.</p>";
            $ok=0;
            //exit();
        } else if (!isset($_FILES[$upload_name]['name'])) {
            $ok=0;
            echo "<p class='error'>File has no name.</p>";
            //exit();
        }
        // DACA ADULT NU E NUMERIC DIEEEEE
        if (isset($_POST['adult']) && is_numeric($_POST['adult']) && $_POST['adult'] >= 0 && $_POST['adult'] <= 1) {
            $adult = $_POST['adult'];
        } else {
            die("You didn't specify if your file(s) are Adult or Non-Adult");
        }

        if(is_numeric($_POST['thumb_size_contaner'])) {
            $thumbnail_size = $_POST['thumb_size_contaner'];
        } else {
            die("Injection detected");
        }

        if($ok == 1) {
        // verificare tipul de imagini - un fel de whitelist
        $imageinfo = getimagesize($_FILES[$upload_name]['tmp_name']);
        if($imageinfo['mime'] != 'image/gif' && $imageinfo['mime'] != 'image/jpeg' && $imageinfo['mime'] != 'image/png' && $imageinfo['mime'] != 'image/jpg') {
            echo "<p class='error'>Sorry, we only accept GIF, JPEG and PNG images</p>";
            $ok=0;
            //exit();
        }
        }

        if($ok == 1) {
        // blacklist ce nu tre sa fie
        $filename = strtolower($_FILES[$upload_name]['name']);
        $blacklist = array('php', 'php3', 'php4', 'phtml','exe'); #example of black list

        foreach ($blacklist as $item) {
            if(preg_match("/$item\$/i", $filename)) {
                echo "<p class='error'>We do not allow uploading PHP files</p>";
                $ok=0;
                //exit();
            }
        }
        }

        if($ok == 1) {
        // de aici setam dimensiunea maxima a imaginii
        list($width, $height, $type, $attr) = getimagesize($_FILES[$upload_name]['tmp_name']);
        if ($width > MAX_UPLOAD_WIDTH || $height > MAX_UPLOAD_HEIGHT)
        {
            echo "<p class='error'>Maximum width and height exceeded. Please upload images below ".MAX_UPLOAD_WIDTH." x ".MAX_UPLOAD_HEIGHT." px size</p>";
            $ok=0;
            //exit();
        }
        }

        if($ok == 1) {
        $q = "SELECT img, thumb FROM sources WHERE id = '1'";
        $result = mysql_query($q);
        if(mysql_num_rows($result) > 0) {
            $rowSources = mysql_fetch_array($result);
        } else {
            die("Something went wrong : ". mysql_error());
        }



        $data_year = date('Y');
        $data_month = date('m');
        $data_day = date('d');

            if($ftp_server == 0) {
        $dir = $rowSources['img'] . "/" . $data_year . "/" . $data_month . "/" . "$data_day";
        $dirthumb = $rowSources['thumb'] . "/" . $data_year . "/" . $data_month . "/" . "$data_day";

        if(!file_exists($dir) OR !is_dir($dir)){
            mkdir($dir, 0777, true);
        }

        if(!file_exists($dirthumb) OR !is_dir($dirthumb)){
            mkdir($dirthumb, 0777, true);
        }

        } else {
                $q = "SELECT * FROM ftp_logins
                INNER JOIN sources ON ftp_logins.source_id = sources.id
                WHERE ftp_logins.id = $ftp_server
                ";
                $result = mysql_query($q);
                if(!$result) {
                    echo mysql_error();
                }
                $rowFTP = mysql_fetch_assoc($result);

                $dir = $rowFTP['img'] . "/" . $data_year . "/" . $data_month . "/" . "$data_day";
                $dir2 = $rowFTP['img2'] . "/" . $data_year . "/" . $data_month . "/" . "$data_day";
                $dirthumb = $rowFTP['thumb'] . "/" . $data_year . "/" . $data_month . "/" . "$data_day";
                $dirthumb2 = $rowFTP['thumb2'] . "/" . $data_year . "/" . $data_month . "/" . "$data_day";



                $FTP = new FTP();
                $FTP->connect($rowFTP['host'], $rowFTP['user'], $rowFTP['pass']);
                global $ftp_conn_id;

                if(!$FTP->directory_exists($ftp_conn_id, "/". $dir)) {
                    $FTP->mkdir_recusive($ftp_conn_id, "/". $dir);
                }
                if(!$FTP->directory_exists($ftp_conn_id, "/". $dirthumb)) {
                    $FTP->mkdir_recusive($ftp_conn_id, "/". $dirthumb);
                }
            }

        //$uniquenumber = uniqid('', true);
        $uniquenumber = uniqid();
        $view_id = uniqid();

        $target = $dir;
        $extension = pathinfo($_FILES[$upload_name]['name'], PATHINFO_EXTENSION);
        //$filename =  $_FILES['uploaded']['name'];
        $nameimage = $uniquenumber . "." .  $extension;
        $target = $target  . "/"  . $uniquenumber . "." . $extension;



        $uploaded_size = $_FILES[$upload_name]['size'];

        //echo $uploaded_size;

        //This is our size condition
        if ($uploaded_size > MAX_UPLOAD_SIZE*1024) { // IN KB
            echo "<p class='error'>Your file is too large.</p>";
            $ok=0;
        }
        }
        //This is our limit file type condition



        if ($ok==0) {
            echo "<p class='error'>Sorry your file was not uploaded </p>";
        } else {

            //If everything is ok we try to upload it
if($ftp_server == 0) {

            if(move_uploaded_file($_FILES[$upload_name]['tmp_name'], $target)) {
                echo "<p class='success'> ". basename( $_FILES[$upload_name]['name']). " has been succesfuly uploaded </p>";

                //aici se transforma RESIZE PENTRU THUMBNAIL din $_POST[''];
                $thumbnail_size_final = 180;
                switch($thumbnail_size) {
                    case 1:
                        $thumbnail_size_final = SMALL_THUMB;
                        break;
                    case 2:
                        $thumbnail_size_final = MEDIUM_THUMB;
                        break;
                    case 3;
                        $thumbnail_size_final = LARGE_THUMB;
                        break;
                    case 4;
                        $thumbnail_size_final = LARGER_THUMB;
                        break;
                    case 5;
                        $thumbnail_size_final = COVER_THUMB;
                        break;
                }



                // aici se face resizeul imaginilor
                $target_thumb = $dirthumb;
                $resizeuploadpatch = $target_thumb . "/" . $uniquenumber . "." . $extension ;
                $image = new SimpleImage();
                $image->load($target);

                if($width > $thumbnail_size_final) {
                $image->resizeToWidth($thumbnail_size_final);
                }

                $image->save($resizeuploadpatch);


                $data = date('Y-m-d');
                //$ImageId = $randomnumber . "-" . $basenameFilesUploaded;
                //$ThumbSpreImagine = $website . "/" . $thumb . "/" . $ImageId;


                //INSERARE IN BAZA DE DATE
                if(isset($_SESSION['user_id'])) {
                    $user_id = $_SESSION['user_id'];
                } else {
                    $user_id = 0;
                }

                if(isset($_SESSION['user_id']) && isset($_POST['set_gallery']) && is_numeric($_POST['set_gallery']) && strlen($_POST['set_gallery']) > 0) {
                    $qG = "SELECT id FROM galleries WHERE id = {$_POST['set_gallery']} AND id_user = {$_SESSION['user_id']}";
                    $resultQg = mysql_query($qG);
                    if($resultQg && mysql_num_rows($resultQg) > 0){
                        $gallery = $_POST['set_gallery'];
                    } else {
                        $gallery = 0;
                    }
                } else {
                    $gallery = 0;
                }

                 $titlename = basename( $_FILES[$upload_name]['name']);
                 $titlename2 = $view_id;

  $q = "INSERT INTO images (`id_user`, `titlename`, `gallery`,`name`,`view_id`, `date_added`, `last_view`, `source`, `adult`, `thumb_size`, `ftp`) VALUES
                            ('{$user_id}', '{$titlename}', '{$gallery}','{$nameimage}', '{$view_id}', '{$data}', '{$data}', '1', '{$adult}', '{$thumbnail_size}', '{$ftp_server}')";
                $result = mysql_query($q);
                $id_inserted = mysql_insert_id();
                if(!$result) {
                    die("Database error : " . mysql_error());
                }

                if(isset($_POST['download_links']) && strlen($_POST['download_links']) > 2) {
                    $download_links = filter($_POST['download_links']);
                    $download_links = trim($download_links);
                    $q = "INSERT INTO images_opt (`id_img`, `download_links`) VALUES ('{$id_inserted}', '{$download_links}')";
                    $result = mysql_query($q);
                    if(!$result) {
                        die("Database error : " . mysql_error());
                    }
                }

                ?>

            <div id="uploadedimage">
                <a target='_blank' href="<?php echo "{$site_url}/img-{$view_id}.html"; ?>"><img border="0" src="<?php echo $site_url . "/" . $resizeuploadpatch; ?>" alt="uploaded_image" /></a>
            </div>

            <div id="uploadcodes">
                <label>BB Code:</label><br />
                <input type='text' onclick="this.select();" value="<?php echo "[URL={$site_url}/img-{$view_id}.html][IMG]{$site_url}/{$resizeuploadpatch}[/IMG][/URL] "; ?>">
                <br /> <br />
                <label>HTML:</label><br />
                <input type='text' onclick="this.select();" value="<?php echo "<a href='{$site_url}/img-{$view_id}.html'><img src='{$site_url}/{$resizeuploadpatch}' alt='image' /></a> "; ?>">
                <br /> <br />
                <label>Link:</label><br />
                <input type='text' onclick="this.select();" value="<?php echo "{$site_url}/img-{$view_id}.html "; ?>">
                <?php
                if(DIRECT_LINK_SHOW == 1) {
                    echo "
                        <br /> <br />
                        <label>Direct Link to image:</label><br />
                        <input type='text' onclick='this.select();' value='{$site_url}/{$dir}/{$nameimage}'>
                        ";
                }
                ?>
            </div>

            <?php

                global $BBCode_global;
                global $HTMLCode_global;
                global $DirectLink_global;
                global $DirectLinkToImg_global;

                $BBCode_global[] = "[URL={$site_url}/img-{$view_id}.html][IMG]{$site_url}/{$resizeuploadpatch}[/IMG][/URL]";
                $HTMLCode_global[] = "<a href='{$site_url}/img-{$view_id}.html'><img src='{$site_url}/{$resizeuploadpatch}' alt='image' /></a>";
                $DirectLink_global[] = "{$site_url}/img-{$view_id}.html";
                $DirectLinkToImg_global[] = "{$site_url}/{$dir}/{$nameimage}";


                echo "<div style='display:none;' class='ajax_BBCode'>[URL={$site_url}/img-{$view_id}.html][IMG]{$site_url}/{$resizeuploadpatch}[/IMG][/URL]</div>";
                echo "<div style='display:none;' class='ajax_HTMLCode'><a href='{$site_url}/img-{$view_id}.html'><img src='{$site_url}/{$resizeuploadpatch}' alt='image' /></a></div>";
                echo "<div style='display:none;' class='ajax_DirectLink'>{$site_url}/img-{$view_id}.html</div>";
                echo "<div style='display:none;' class='ajax_DirectLinkToImg'>{$site_url}/{$dir}/{$nameimage}</div>";

            } else {
                echo "<p class='error'>Sorry, there was a problem uploading your file.</p>";
            }

} else { // if FTP SERVER
    $ftp_temp_img = "cache/ftp/".$nameimage."";
    $ftp_temp_thumb = "cache/ftp/thumb/".$nameimage."";
    if(move_uploaded_file($_FILES[$upload_name]['tmp_name'], $ftp_temp_img)) {
        //aici se transforma RESIZE PENTRU THUMBNAIL din $_POST[''];
        $thumbnail_size_final = 180;
        switch($thumbnail_size) {
            case 1:
                $thumbnail_size_final = SMALL_THUMB;
                break;
            case 2:
                $thumbnail_size_final = MEDIUM_THUMB;
                break;
            case 3;
                $thumbnail_size_final = LARGE_THUMB;
                break;
            case 4;
                $thumbnail_size_final = LARGER_THUMB;
                break;
            case 5;
                $thumbnail_size_final = COVER_THUMB;
                break;
        }



        // aici se face resizeul imaginilor
        $image = new SimpleImage();
        $image->load($ftp_temp_img);

        if($width > $thumbnail_size_final) {
            $image->resizeToWidth($thumbnail_size_final);
        }

        $image->save($ftp_temp_thumb);
    }


    if (ftp_put($ftp_conn_id, "/".$dir . "/$nameimage/", $ftp_temp_img, FTP_BINARY)) {
        //echo "successfully uploaded image $ftp_temp_img in $target\n";
    } else {
        //echo "There was a problem while uploading $ftp_temp_img in $target\n";
    }

    if (ftp_put($ftp_conn_id, "/".$dirthumb . "/$nameimage/", $ftp_temp_thumb, FTP_BINARY)) {
        //echo "successfully uploaded image $ftp_temp_thumb in $ftp_temp_thumb\n";
    } else {
        //echo "There was a problem while uploading $ftp_temp_thumb in $dirthumb\n";
    }

    $FTP->disconnect($ftp_conn_id);

    unlink($ftp_temp_img);
    unlink($ftp_temp_thumb);


    $data = date('Y-m-d');
    //$ImageId = $randomnumber . "-" . $basenameFilesUploaded;
    //$ThumbSpreImagine = $website . "/" . $thumb . "/" . $ImageId;


    //INSERARE IN BAZA DE DATE
    if(isset($_SESSION['user_id'])) {
        $user_id = $_SESSION['user_id'];
    } else {
        $user_id = 0;
    }

    if(isset($_SESSION['user_id']) && isset($_POST['set_gallery']) && is_numeric($_POST['set_gallery']) && strlen($_POST['set_gallery']) > 0) {
        $qG = "SELECT id FROM galleries WHERE id = {$_POST['set_gallery']} AND id_user = {$_SESSION['user_id']}";
        $resultQg = mysql_query($qG);
        if($resultQg && mysql_num_rows($resultQg) > 0){
            $gallery = $_POST['set_gallery'];
        } else {
            $gallery = 0;
        }
    } else {
        $gallery = 0;
    }

                 $titlename = basename( $_FILES[$upload_name]['name']);
                 $titlename2 = $view_id;

  $q = "INSERT INTO images (`id_user`,  `titlename`, `gallery`,`name`,`view_id`, `date_added`, `last_view`, `source`, `adult`, `thumb_size`, `ftp`) VALUES
                            ('{$user_id}', '{$titlename}', '{$gallery}','{$nameimage}', '{$view_id}', '{$data}', '{$data}', '1', '{$adult}', '{$thumbnail_size}', '{$ftp_server}')";
    $result = mysql_query($q);
    $id_inserted = mysql_insert_id();
    if(!$result) {
        die("Database error : " . mysql_error());
    }

    if(isset($_POST['download_links']) && strlen($_POST['download_links']) > 2) {
        $download_links = filter($_POST['download_links']);
        $download_links = trim($download_links);
        $q = "INSERT INTO images_opt (`id_img`, `download_links`) VALUES ('{$id_inserted}', '{$download_links}')";
        $result = mysql_query($q);
        if(!$result) {
            die("Database error : " . mysql_error());
        }
    }

    ?>

<div id="uploadedimage">
    <a target='_blank' href="<?php echo "{$site_url}/img-{$view_id}.html"; ?>"><img border="0" src="<?php echo "{$rowFTP['url']}/{$dirthumb2}/{$nameimage}"; ?>" alt="uploaded_image" /></a>
</div>

<div id="uploadcodes">
    <label>BB Code:</label><br />
    <input type='text' onclick="this.select();" value="<?php echo "[URL={$site_url}/img-{$view_id}.html][IMG]{$rowFTP['url']}/{$dirthumb2}/{$nameimage}[/IMG][/URL] "; ?>">
    <br /> <br />
    <label>HTML:</label><br />
    <input type='text' onclick="this.select();" value="<?php echo "<a href='{$site_url}/img-{$view_id}.html'><img src='{$rowFTP['url']}/{$dirthumb2}/{$nameimage}' alt='image' /></a> "; ?>">
    <br /> <br />
    <label>Link:</label><br />
    <input type='text' onclick="this.select();" value="<?php echo "{$site_url}/img-{$view_id}.html "; ?>">
    <?php
    if(DIRECT_LINK_SHOW == 1) {
        echo "
                        <br /> <br />
                        <label>Direct Link to image:</label><br />
                        <input type='text' onclick='this.select();' value='{$rowFTP['url']}/{$dir2}/{$nameimage}'>
                        ";
    }
    ?>
</div>

<?php

    global $BBCode_global;
    global $HTMLCode_global;
    global $DirectLink_global;
    global $DirectLinkToImg_global;

    $BBCode_global[] = "[URL={$site_url}/img-{$view_id}.html][IMG]{$rowFTP['url']}/{$dirthumb2}/{$nameimage}[/IMG][/URL]";
    $HTMLCode_global[] = "<a href='{$site_url}/img-{$view_id}.html'><img src='{$rowFTP['url']}/{$dirthumb2}/{$nameimage}' alt='image' /></a>";
    $DirectLink_global[] = "{$site_url}/img-{$view_id}.html";
    $DirectLinkToImg_global[] = "{$rowFTP['url']}/{$dir2}/{$nameimage}";

    echo "<div style='display:none;' class='ajax_BBCode'>[URL={$site_url}/img-{$view_id}.html][IMG]{$rowFTP['url']}/{$dirthumb2}/{$nameimage}[/IMG][/URL]</div>";
    echo "<div style='display:none;' class='ajax_HTMLCode'><a href='{$site_url}/img-{$view_id}.html'><img src='{$rowFTP['url']}/{$dirthumb2}/{$nameimage}' alt='image' /></a></div>";
    echo "<div style='display:none;' class='ajax_DirectLink'>{$site_url}/img-{$view_id}.html</div>";
    echo "<div style='display:none;' class='ajax_DirectLinkToImg'>{$rowFTP['url']}/{$dir2}/{$nameimage}</div>";

} // ftp end





        } // ELSE IF EVERYTING IS OK, IF ERROR = 0
    } // END FUNCTION

我对此感到非常沮丧,但我无法找到导致错误的原因。

以下是数据库屏幕截图:

Here is database screenshot

0 个答案:

没有答案