2013-11-09 6 views
0
if(move_uploaded_file($_FILES[$thumbnail_fieldname]['tmp_name'], $thumbnail_filename) && 
    //move desktop files 
    move_uploaded_file($_FILES[$desktop_fieldname_1280x800]['tmp_name'], $desktop_filename_1280x800) && 
    move_uploaded_file($_FILES[$desktop_fieldname_1366x768]['tmp_name'], $desktop_filename_1366x768) && 
    move_uploaded_file($_FILES[$desktop_fieldname_1920x1080]['tmp_name'], $desktop_filename_1920x1080)){ 

    echo "<p>We can move all files.</p>";} 

В моем коде выше текст не печатается, когда одно из условий не получится, и что из-за & &, который означает, что все должно быть так, что я хочу достичь здесь, когда-либо файла, который должен быть загружен, он должен пройти условие и распечатать текст, и если какой-либо один или два файла не будут выбраны, он может пропустить и распечатать текст, поскольку один файл уже существует, и если ни один файл не выбран то условие должно быть ложным. Это не может быть сделано с || так как с этим, если все верно, все верно, так какая комбинация может быть использована для этого?PHP - условные операторы

Например файла перемещена мини-копии = р

рабочего стол файл 1280x800 переехал = р

десктопа файлы 1366x768 не перемещаются = ложь // отсюда следует проверить следующее условие

рабочего стола файл 1920x1080 перемещен = истина

// и должен печатать выходные данные.

+0

хотите выполнить условие в одно время, не хочу, чтобы разбить его на много МФС .. –

+2

вопрос кажется очень расплывчато. Не могли бы вы перефразировать? – Joren

+0

Чтобы уточнить: вы хотите, чтобы «миниатюра» и _ по крайней мере один из загружаемых файлов «desktop», чтобы распечатать текст? – geomagas

ответ

3

Что об этом:

// trys to upload the thumbnail 
if(move_uploaded_file($_FILES[$thumbnail_fieldname]['tmp_name'], $thumbnail_filename) 
    // and tries to upload all the other images and store the return values. 
    // if one or more of them succeeded print the message 
    && in_array(TRUE, array(
    move_uploaded_file($_FILES[$desktop_fieldname_1280x800]['tmp_name'], $desktop_filename_1280x800), 
    move_uploaded_file($_FILES[$desktop_fieldname_1366x768]['tmp_name'], $desktop_filename_1366x768), 
    move_uploaded_file($_FILES[$desktop_fieldname_1920x1080]['tmp_name'],$desktop_filename_1920x1080) 
))) { 
    echo 'upload done'; 
} else { 
    echo 'no upload happened'; 
} 
+0

Я думаю, [он хочет, чтобы «thumbnail» был обязательным] (http://stackoverflow.com/questions/19876871/php-conditional-statments#comment29568275_19876871). – geomagas

+0

Да, эскиз должен быть обязательным. –

+1

@veptemp Теперь он должен делать то, что вы хотите. Однако этот код не является реальным миром. Обычно вам нужно знать, что именно произошло, и создать хотя бы правильное сообщение (или сообщение об ошибке) ... – hek2mgl

Смежные вопросы