Форма PHP не будет отправлена после загрузки через Ajax

0

У меня есть первая страница формы, а затем я использую jQuery для загрузки второй части формы. Однако после того, как я нажму кнопку "Отправить" в форме, ничего не происходит, страница просто застряла здесь. Есть идеи?

JQuery:

       $.ajax({
            type: "POST",
            url: "join_submit.php",                     
            data: data, 
            success: function () {
                $("#regform").load("submitTranscript.php");
            }
       });          

submitTranscript.php:

 <div id="regform>
 <form id="uploadTranscript" action="uploadPDF.php" enctype="multipart/form-data" method="post">
<div class="separation">
    <h3>Upload Transcripts</h3>
    <div class = "row">
        <div class="large-6 offset-2 columns">
        <label for = "studid">Enter your student ID:</lable>
            <input type="text" name="studid" id="studid"
    </div>
    <p>Please label your transcript with your user id (i.e. 123456.pdf).</p>
    <div class="row">
        <div class="large-6  offset-2 columns">
            <input type="file" name="transcript" id="transcript">
        </div>
    </div>
    <div class="buttonRow">
        <div class="button" id="submit">Submit</div>
    </div>
   </div>
  </form>
 </div>

uploadPDF.php:

<?php
require_once("included.php"); //server info
$allowedExtensions = array("pdf");
$max_filesize = 20000;
$upload_path = "docs/transcripts/";
$filename = $_FILES["transcript"]["name"];  
$filesize = $_FILES["transcript"]["size"];
$extension = $_FILES["transcript"]["type"];
 if ($_FILES["transcript"]["error"] > 0) {
        echo "Error: " . $_FILES["transcript"]["error"] . "<br />";
    }
else if((in_array($extension, $allowedExtensions)) && ($filesize < $max_filesize)) {
    move_uploaded_file($_FILES["transcript"]["tmp_name"], $upload_path . $filename);
}
else if($filesize > $max_filesize){
    $fileSizeFail = true;
}
else {                      
    $fileTypeFail = true;
}   
 ?>
Теги:
forms

2 ответа

3
Лучший ответ

Если я загляну в submitTranscript.php, вы отправили следующую форму для отправки своей формы:

<div class="buttonRow">
    <div class="button" id="submit">Submit</div>
</div>

Но вы не ввели кнопку отправки, чтобы отправить форму. Элемент Div не может публиковать или отправлять какие-либо формы. Поэтому я бы предложил ввести кнопку ввода типа ввода, а затем попытаться отправить форму через эту кнопку.

Таким образом, код будет:

<div class="buttonRow">
    <div class="button" id="submit">
        <input type="submit" name="form_submit" value="Submit" />
    </div>
</div>
  • 0
    Если ваша проблема решена, то не могли бы вы поднять ответ на голосование, которое расположено слева от моих ответов.
0

Вы не указываете информацию о файле join_submit.php. Вы должны проверить консоль firebug, присутствующую в браузере Firefox, что является возвращаемым значением вашего файла join_submit.php. Будет ли это успех успешной или нет. Тогда только вы можете отслеживать, почему он не загружает вторую форму. В браузере Chrome вы можете отслеживать запрос ajax, нажав F12, а затем Network.

Надеюсь, поможет

Ещё вопросы

Сообщество Overcoder
Наверх
Меню