За последние 24 часа нас посетили 20247 программистов и 1082 робота. Сейчас ищут 758 программистов ...

Не сохраняется изображение

Тема в разделе "Сделайте за меня", создана пользователем maksimkaqq, 29 апр 2020.

  1. maksimkaqq

    maksimkaqq Новичок

    С нами с:
    23 апр 2020
    Сообщения:
    21
    Симпатии:
    0
    PHP:
    1. <?php
    2.     $data = $_POST;
    3.     if ( isset($data['do_post']))
    4.     {
    5.   function can_upload($file){
    6.   // если имя пустое, значит файл не выбран
    7.     if($file['name'] == '')
    8.     return 'Вы не выбрали файл.';
    9.  
    10.   /* если размер файла 0, значит его не пропустили настройки
    11.   сервера из-за того, что он слишком большой */
    12.   if($file['size'] == 0)
    13.     return 'Файл слишком большой.';
    14.  
    15.   // разбиваем имя файла по точке и получаем массив
    16.   $getMime = explode('.', $file['name']);
    17.   // нас интересует последний элемент массива - расширение
    18.   $mime = strtolower(end($getMime));
    19.   // объявим массив допустимых расширений
    20.   $types = array('jpg', 'png', 'gif', 'bmp', 'jpeg');
    21.  
    22.   // если расширение не входит в список допустимых - return
    23.   if(!in_array($mime, $types))
    24.     return 'Недопустимый тип файла.';
    25.   return true;
    26.   }
    27.  
    28.   function make_upload($file){
    29.   // формируем уникальное имя картинки: случайное число и name
    30.   $name = mt_rand(0, 10000) . $file['name'];
    31.   copy($file['tmp_name'], 'img/' . $name);
    32.   }
    33.     // если была произведена отправка формы
    34.     if(isset($_FILES['file'])) {
    35.       // проверяем, можно ли загружать изображение
    36.       $check = can_upload($_FILES['file']);
    37.    
    38.       if($check === true){
    39.         // загружаем изображение на сервер
    40.         make_upload($_FILES['file']);
    41.         echo "<strong>Файл успешно загружен!</strong>";
    42.       }
    43.       else{
    44.         // выводим сообщение об ошибке
    45.         echo "<strong>$check</strong>";
    46.       }
    47.     }
    48.  
    49.  
    50.  
    51. $errors = array();
    52.       $data['image'] = $file['name'];
    53.  
    54.     $adate = date_create_from_format('Y-m-d', $_POST['data']);
    55.     $_POST['avtor'] = $data['login'];
    56.  
    57.         if( trim($data['title']) == '')
    58.           {
    59.                 $errors[] = 'Введите заголовок';
    60.           }
    61.  
    62.         if( trim($data['text']) == '')
    63.           {
    64.                 $errors[] = 'Введите текст';
    65.           }
    66.  
    67.       if( empty($errors) )
    68.       {
    69.        
    70.         $post = R::dispense('post');
    71.         $post->title = $data['title'];
    72.         $post->image = $data['image'];
    73.         $post->text = $data['text'];
    74.         $post->data = $data['data'];
    75.         $post->like = $data['like'];
    76.         $post->avtor = $data['avtor'];
    77.         R::store($post);
    78.  
    79.       {
    80.         echo 'Статья опубликована <hr>';
    81.       }
    82.  
    83.       } else
    84.       {
    85.         echo '<div>'.array_shift($errors).'</div><hr>';
    86.       }
    87.     }
    88.  
    89.   ?>
    90.  
    91. <form action="lay_post.php" method="POST">
    92.     <p> Создание новой статьи </p>
    93. <div class="post_tile">
    94.   <p>
    95.       <p><strong>Введите заголовок</strong></p>
    96.       <div class="post_tile">
    97.       <input type="text" name="title" value="<?php echo @$data['title']; ?>">
    98.   </p>
    99.   <p>
    100.       <input type="file" name="file">
    101.   </p>
    102.      <p>
    103.      <p><strong>Текст статьи</strong></p>
    104.       <textarea type="text" name="text"value="<?php echo @$data['text']; ?>"></textarea>
    105.     </p>
    106. </div>
    107.     <p>
    108.       <input type="submit" name="do_post" value="Опубликовать статью">
    109.     </p>
    110. </form>
    И снова здравствуйте!)
    Я пытался сделать загрузку изображений на сервер и сохранение имя изображения в базу данных, но у меня так и не получилось(
     
  2. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    @maksimkaqq, попробуйте почитать книг по РНР :)
    Ибо вот это:
    ну ни в какие ворота не лезет
     
  3. maksimkaqq

    maksimkaqq Новичок

    С нами с:
    23 апр 2020
    Сообщения:
    21
    Симпатии:
    0
    Кончено спасибо большое, что ты откликнулся на мою проблему, но как мне ее решить?)
    P.s Книги уже скачиваю :)
     
  4. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    @maksimkaqq, надо не скачивать, а покупать в книжном магазине. А всё что скачано (легко пришло) в голове не задержится (легко ушло).
    Тебе нужны базовые основы языка, нет смысла говорить о чём то другом пока ты объявление функции засовываешь в условный оператор.
     
  5. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.591
    Симпатии:
    360