Загрузить несколько файлов с php и mysql? - PullRequest
1 голос
/ 29 ноября 2011

Привет всем, и я надеюсь, что вы можете мне помочь

Проблема в том, что у меня есть форма со следующим кодом:

<form action="uploadernoticias.php" method="post" enctype="multipart/form-data" name="form1" class="nice" id="form1">
    <h2>Insertar Noticias</h2>
    <p class="left">
      <label>Titulo</label>
        <input name="caption" type="text" class="inputText" id="caption" />
      <label>Imagen/Foto</label>
      <input type="file" name="uploadedfile" id="uploadedfile" class="inputText" />
    </p>
    <p class="right">
    <label>Description:</label>
        <textarea name="contenido" cols="" rows="10" class="inputText_wide" id="contenido"></textarea>
        <br clear="all" />
        <button class="green" type="submit">Listo! - Subir Noticias</button>

    </p>
    <div class="clear"></div>
  </form>

И файл uploadernoticias.php:

<?php

/*##################--[Obteniendo datos del formulario - Propiedades]*/

// Nombre
$caption = $_POST['caption'];
// Contenido
$contenido= $_POST['contenido'];

/*##################--[Definiendo la carpeta imagenes para las Propiedades]*/

$target_path = "../imagenes/noticias/";

/*##################--[Seteando las imagenes]*/
$target_path = $target_path . basename( $_FILES['uploadedfile']['name']); 
$file_path = basename( $_FILES['uploadedfile']['name']); 
$file_size = basename( $_FILES['uploadedfile']['size']); 
if ($file_size > '20452525'){
header('Location: gallery.php?id=error');
} 
else
{
/*##################--[Informando si se subio correctamente entonces..]*/
if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
    //echo "The file ".  basename( $_FILES['uploadedfile']['name']). 
    //" has been uploaded<br><br>Link: <a href=\"http://www.thetastingroomokc.com/gallery/". basename( $_FILES['uploadedfile']['name'])  ."\">http://www.thetastingroomokc.com/gallery/". basename( $_FILES['uploadedfile']['name'])  ."</a>";

/*##################--[Insertar en la base de datos]*/  
    mysql_query("INSERT INTO noticias VALUES ('', '$caption', '$contenido', '$file_path')");

    //echo $file_size.' is how big your file is. It was transferred.';

/*##################--[Luego, enviar a una pagina]*/    
    header('Location: noticias.php');

} else{
   echo "There was an error uploading the file, please try again!";
}
}

?>

Проблема в том, что он не выдает ошибку, не поднимается в базу данных и не загружает изображения в папки на сервере.

Что я делаю не так?

Спасибо и надеюсь, что вы можете мне помочь

Ответы [ 2 ]

1 голос
/ 29 ноября 2011

Возможно, у вас нет разрешения на запись в target_path. Вы это проверяли? Возможно, вы не видите никакого сообщения об ошибке, потому что у вас отключены display_errors (в php.ini). Вы можете активировать display_errors или активировать регистрацию на вашем сервере:

http://www.php.net/manual/en/errorfunc.configuration.php#ini.display-errors

http://www.php.net/manual/en/errorfunc.configuration.php#ini.log-errors

Если у вас нет доступа к файлам конфигурации, вы можете попробовать это в вашем скрипте:

ini_set('display_errors','On'); 
0 голосов
/ 30 ноября 2011

Попробуйте применить правильные разрешения к папке загрузки, в большинстве браузеров ftp щелкните правой кнопкой мыши папку> атрибуты файла или разрешения и установите для них значение 777. Через SSH это будет: chmod -Rf 777 foldername

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