1

我有一个表单/页面,似乎在页面加载时提交了表单数据。如果您单击“添加记录”,它会加载页面并在数据库中创建一个新条目,而无需输入任何信息。如果您填写表格,它会按需要工作,但会创建和附加记录。什么会导致表单“加载”提交?我也对网站的其他区域使用相同的表格,没有问题,但数据存储到不同的表中。

我的代码

    <?

    if(isset($_POST['title'])) {
        if(isset($_POST['gallery_1'])) {
            $gallery_1 = $_POST['gallery_1'];
        }
        if(isset($_POST['gallery_2'])) {
            $gallery_2 = $_POST['gallery_2'];
        }
            if(isset($_POST['gallery_3'])) {
            $gallery_3 = $_POST['gallery_3'];
        }
            if(isset($_POST['gallery_4'])) {
            $gallery_4 = $_POST['gallery_4'];
        }
            if(isset($_POST['gallery_5'])) {
            $gallery_5 = $_POST['gallery_5'];
        }

            if(isset($_POST['download_1'])) {
            $download_1 = $_POST['download_1'];
        }

            if(isset($_POST['download_2'])) {
            $download_2 = $_POST['download_2'];
        }

            if(isset($_POST['download_3'])) {
            $download_3 = $_POST['download_3'];
        }

        $title = $_POST['title'];
        $title_gallery = $_POST['title_gallery'];
        $date = $_POST['date'];
        $introduction = $_POST['introduction'];
        $download_1_title = $_POST['download_1_title'];
        $download_2_title = $_POST['download_2_title'];
        $download_3_title = $_POST['download_3_title'];
        $dropbox_title = $_POST['dropbox_title'];
        $dropbox_info = $_POST['dropbox_info'];
        $dropbox_link = $_POST['dropbox_link'];
        $video_title = $_POST['video_title'];
        $video = $_POST['video'];


        $handle = new Upload($_FILES['gallery_1']);
            if ($handle->uploaded) {
                $handle->file_max_size = 4000000;
                $handle->image_resize = true;
                $handle->image_ratio = true;
                $handle->image_ratio_crop = true;
                $handle->image_y = 407;
                $handle->image_x = 460;
                $handle->allowed = array('image/pjpeg','image/jpeg', 'image/jpg');
                $handle->Process($dir_dest);
                if ($handle->processed) {
                    echo 'issue image 1 uploaded ' . round(filesize($handle->file_dst_pathname)/256)/4 . 'KB<br /><br />';
                    $gallery_1 = $dir_pics.'/' . $handle->file_dst_name ;
                } else {
                    echo '  the following error occurred while uploading image 1<br />';
                    echo '  Error: ' . $handle->error . '<br /><br />';
                }
                $handle-> Clean();
            }



            $handle2 = new Upload($_FILES['gallery_2']);
            if ($handle2->uploaded) {
                $handle2->file_max_size = 4000000;
                $handle2->image_resize = true;
                $handle2->image_ratio = true;
                $handle2->image_ratio_crop = true;
                $handle2->image_y = 307;
                $handle2->image_x = 460;
                $handle2->allowed = array('image/pjpeg','image/jpeg', 'image/jpg');
                $handle2->Process($dir_dest);
                if ($handle2->processed) {
                    echo 'issue image 2 uploaded ' . round(filesize($handle2->file_dst_pathname)/256)/4 . 'KB<br /><br />';
                    $gallery_2 = $dir_pics.'/' . $handle2->file_dst_name ;
                } else {
                    echo '  the following error occurred while uploading image 2<br />';
                    echo '  Error: ' . $handle2->error . '<br /><br />';
                }
                $handle2-> Clean();
            }

            $handle3 = new Upload($_FILES['gallery_3']);
            if ($handle3->uploaded) {
                $handle3->file_max_size = 4000000;
                $handle3->image_resize = true;
                $handle3->image_ratio = true;
                $handle3->image_ratio_crop = true;
                $handle3->image_y = 307;
                $handle3->image_x = 460;
                $handle3->allowed = array('image/pjpeg','image/jpeg', 'image/jpg');
                $handle3->Process($dir_dest);
                if ($handle3->processed) {
                    echo 'issue image 3 uploaded ' . round(filesize($handle3->file_dst_pathname)/256)/4 . 'KB<br /><br />';
                    $gallery_3 = $dir_pics.'/' . $handle3->file_dst_name ;
                } else {
                    echo '  the following error occurred while uploading image 3<br />';
                    echo '  Error: ' . $handle3->error . '<br /><br />';
                }
                $handle3-> Clean();
            }

            $handle4 = new Upload($_FILES['gallery_4']);
            if ($handle4->uploaded) {
                $handle4->file_max_size = 4000000;
                $handle4->image_resize = true;
                $handle4->image_ratio = true;
                $handle4->image_ratio_crop = true;
                $handle4->image_y = 307;
                $handle4->image_x = 460;
                $handle4->allowed = array('image/pjpeg','image/jpeg', 'image/jpg');
                $handle4->Process($dir_dest);
                if ($handle4->processed) {
                    echo 'main image for issue uploaded ' . round(filesize($handle4->file_dst_pathname)/256)/4 . 'KB<br /><br />';
                    $gallery_4 = $dir_pics.'/' . $handle4->file_dst_name ;
                } else {
                    echo '  the following error occurred while uploading the main image<br />';
                    echo '  Error: ' . $handle4->error . '<br /><br />';
                }
                $handle4-> Clean();
            }

            $handle5 = new Upload($_FILES['gallery_5']);
            if ($handle5->uploaded) {
                $handle5->file_max_size = 4000000;
                $handle5->image_resize = true;
                $handle5->image_ratio = true;
                $handle5->image_ratio_crop = true;
                $handle5->image_y = 307;
                $handle5->image_x = 460;
                $handle5->allowed = array('image/pjpeg','image/jpeg', 'image/jpg');
                $handle5->Process($dir_dest);
                if ($handle5->processed) {
                    echo 'map image for issue uploaded ' . round(filesize($handle5->file_dst_pathname)/256)/4 . 'KB<br /><br />';
                    $gallery_5 = $dir_pics.'/' . $handle5->file_dst_name ;
                } else {
                    echo '  the following error occurred while uploading the map image<br />';
                    echo '  Error: ' . $handle5->error . '<br /><br />';
                }
                $handle5-> Clean();
            }


            $handle6 = new Upload($_FILES['download_1']);
            if ($handle6->uploaded) {
                $handle6->file_max_size = 4000000;
                $handle6->allowed = array('application/*', 'image/*');
                $handle6->Process($dir_dest);
                if ($handle6->processed) {
                    echo 'download one uploaded' . round(filesize($handle6->file_dst_pathname)/256)/4 . 'KB<br /><br />';
                    $download_1 = $dir_pics.'/' . $handle6->file_dst_name ;
                } else {
                    echo '  the following error occurred while uploading download one<br />';
                    echo '  Error: ' . $handle6->error . '<br /><br />';
                }
                $handle6-> Clean();
            }

            $handle7 = new Upload($_FILES['download_2']);
            if ($handle7->uploaded) {
                $handle->file_max_size = 4000000;
                $handle->allowed = array('application/*', 'image/*');
                $handle7->Process($dir_dest);
                if ($handle7->processed) {
                    echo 'download two uploaded' . round(filesize($handle7->file_dst_pathname)/256)/4 . 'KB<br /><br />';
                    $download_2 = $dir_pics.'/' . $handle7->file_dst_name ;
                } else {
                    echo '  the following error occurred while uploading download two<br />';
                    echo '  Error: ' . $handle7->error . '<br /><br />';
                }
                $handle7-> Clean();
            }

            $handle8 = new Upload($_FILES['download_3']);
            if ($handle8->uploaded) {
                $handle->file_max_size = 4000000;
                $handle->allowed = array('application/*', 'image/*');
                $handle8->Process($dir_dest);
                if ($handle8->processed) {
                    echo 'download three uploaded' . round(filesize($handle8->file_dst_pathname)/256)/4 . 'KB<br /><br />';
                    $download_3 = $dir_pics.'/' . $handle8->file_dst_name ;
                } else {
                    echo '  the following error occurred while uploading download three<br />';
                    echo '  Error: ' . $handle8->error . '<br /><br />';
                }
                $handle8-> Clean();
            }


        }

        $query = mysql_query("INSERT INTO news  (
id ,
title ,
title_gallery ,
date ,
introduction ,
gallery_1 ,
gallery_2 ,
gallery_3 ,
gallery_4 ,
gallery_5 ,
download_1 ,
download_2 ,
download_3 ,
download_1_title ,
download_2_title ,
download_3_title ,
dropbox_title ,
dropbox_info ,
dropbox_link ,
video_title ,
video
) VALUES

(NULL,
'$title',
'$title_gallery',
'$date',
'$introduction',
'$gallery_1',
'$gallery_2',
'$gallery_3',
'$gallery_4',
'$gallery_5',
'$download_1',
'$download_2',
'$download_3',
'$download_1_title',
'$download_2_title',
'$download_3_title',
'$dropbox_title',
'$dropbox_info',
'$dropbox_link',
'$video_title',
'$video');");

if($query) {
            $message = $title . " has been added";
        }else{
            $message = "an error occurred while updating this entry";
        }


    ?>
    </p>

    <? if(isset($_POST['title'])) { ?>
            <div id="content_holder">
              <p style="text-align:center;padding-top:20px;">
              <strong><? echo $message; ?></strong><br/>
              <span class="error"><? if($error_message) { echo $error_message; } ?></span>
              Add another <a href="add.php">Record/Item</a></p>
            <!-- end content_holder -->
            </div>
       <? }else{ ?>

形式...和右括号...

4

2 回答 2

1

您的INSERT查询超出了您的if(isset($_POST['title']))陈述。每次加载页面时都会插入一行,其中包含空值。

于 2012-10-17T14:49:39.837 回答
0

是否有可能在 php 方面您不检查表单是否已提交,而只是在每次页面加载时盲目地从空数据创建新记录?

编辑:正是。mysql 查询不运行什么。在其周围放置一个 if 以确保已提交表单。

于 2012-10-17T14:46:44.943 回答