• Как сделать редирект если запись в БД не находится?

    @SomethingWrong
    us3.php.net/manual/ru/function.header.php

    //header('Location: http://www.example.com/');
    //header('Location: script.php');
    //header('Location: script.php', true, 302);
    //header('Location: script.php', true, 301);
    
    <?php
    $redirect_url = 'catalog'; // url: http://www.example.com/catalog
    
    if(empty($_GET['id']) || !is_numeric($_GET['id'])) {
    //id проекта не передан, или не число, редирект, и прекращение выполнения
       header("Location: {$redirect_url}"); 
       exit;     
    }
    
    include 'admin/functions/database_project.php'; 
    $projects = getProjects($_GET['id']); 
    
    if(empty($projects['id'])) {
    // Этот редирект сработает, только если в файле database_project.php 
    //не отрисовывался html, не вызывался print, или echo 
       header("Location: {$redirect_url}"); 
       exit;     
    }
    
    $title = $projects['name']." | KINGWOOD ";
    include "header_two.php";


    Если же в файле database_project.php производится хоть какой-то вывод, header не сработает.
    В этом случае код, связанный с получением данных, должен выполняться с буферизацией.
    Также обратите внимание, что вызов проверки на существование полученных данных происходит до того, как подключаются какие-либо дальнейшие обработчики.

    php.net/manual/ru/function.ob-start.php
    Ответ написан
    Комментировать
  • Как в PHP удалить оборачивающие кавычки?

    @SomethingWrong
    //а если входной формат не однообразный,
    $inArr = 'element_0,    element_1,element_2 , element_3, , ';
    $arr = array_filter(array_map('trim', explode(',', $inArr)));
    echo $arr[0];
    Ответ написан
    Комментировать