Выполнение PHP Submit и Fileupload с одной и той же кнопки - PullRequest
1 голос
/ 18 января 2011

Я пишу страницу, где пользователь может заполнить данные формы, выбрать два файла для загрузки, а затем нажать кнопку Отправить, чтобы передать данные формы на страницу PHP, и оба файла будут загружены.

Проблема в том, что кнопка отправки может быть только «отправить» или «File_Upload».Это не может сделать и то, и другое ... или не так ли?

Вот небольшая часть HTML-файла (достаточно, чтобы понять суть ... Надеюсь)

  <form class='form' name="frm_new_session" method="POST" enctype="multipart/form-data">  
    <div class='frm_row'>  
        <label>Title</label>  
        <input id="titleF" type='text' name="title" size='50' />  
        <input type="hidden" name="_chkuser" value="1"/>  
    </div>  
    <div class='frm_row'>  
        <label>Description</label>  
        <textarea id="descF" rows='3' cols='53' name="desc"></textarea>  
    </div>  
    <div class='frm_row'>  
        <label>Image</label>  
        <input id="imageF" type="file" name="uploadedimage">  
        <input type="hidden" name=MAX_FILE_SIZE" value='50000000'/>  
        </input> <br />  
    </div>  
    <div class='frm_row'>  
        <label>Session Media</label>  
        <input type='radio' id="mediaF" name="media" />  
        Upload: <input type='file' name="fileupload">  
        </input> <br />  
        <input type='radio' id="mediaF" name="media" />  
            Enter media URL:  
            <input type='text' size='75' name="mediaFile"/>  
        </input>  
    </div>                  
    <div class='frm_row'>  
        <input type="submit" value="Save Session"/>                     
        <div class='btn' type="submit" style='float: left;'>  
        <a href='#' id='btn_save_session'><span>Save Session</span></a>  
        <div class='kill_clear'></div>  
    </div>  
 </form>  

IЯ знаю, что могу сделать это, используя несколько форм, но я бы хотел избежать этого и получать удовольствие от использования всего лишь одной кнопки «Сохранить».

Есть предложения?

Ответы [ 2 ]

3 голосов
/ 18 января 2011

Я не понимаю проблемы, информация будет в массиве $ _POST, а файлы - в массиве $ _FILES. однако в MAX_FILE_SIZE отсутствует двойная кавычка, я протестировал следующий код, и он работает: D

<?php
print_r($_POST);
print_r($_FILES);
?>
  <form class='form' name="frm_new_session" method="POST" enctype="multipart/form-data">  
    <div class='frm_row'>  
        <label>Title</label>  
        <input id="titleF" type='text' name="title" size='50' />  
        <input type="hidden" name="_chkuser" value="1"/>  
    </div>  
    <div class='frm_row'>  
        <label>Description</label>  
        <textarea id="descF" rows='3' cols='53' name="desc"></textarea>  
    </div>  
    <div class='frm_row'>  
        <label>Image</label>  
        <input id="imageF" type="file" name="uploadedimage">  
        <input type="hidden" name="MAX_FILE_SIZE" value='50000000'/>  
        </input> <br />  
    </div>  
    <div class='frm_row'>  
        <label>Session Media</label>  
        <input type='radio' id="mediaF" name="media" />  
        Upload: <input type='file' name="fileupload">  
        </input> <br />  
        <input type='radio' id="mediaF" name="media" />  
            Enter media URL:  
            <input type='text' size='75' name="mediaFile"/>  
        </input>  
    </div>                  
    <div class='frm_row'>  
        <input type="submit" value="Save Session"/>                     
        <div class='btn' type="submit" style='float: left;'>  
        <a href='#' id='btn_save_session'><span>Save Session</span></a>  
        <div class='kill_clear'></div>  
    </div>  
 </form>  
0 голосов
/ 18 января 2011
<form action="/add-news.php" method="post" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="5242880" />
<input type="text" name="title" />
<input type="file" name="image" />
<textarea rows="40" cols="50" name="content"></textarea>
</form>

Попробуйте добавить скрытое поле MAX_FILE_SIZE, где значением является максимальный размер файлов в байтах. У меня это работает.

Что вы подразумеваете под: «Он не может делать и то и другое», каковы показания?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...