Daimonos
Новичок
Здравствуйте! Создавая проект я столкнулся с такого рода трудностью. Есть основная таблица в БД с именем `content`, есть так же таблица с именем `archive` в которую по задумке должны отправляться ненужные мне строки. Эти строки должны были опеределяться путем выбора из выпадающего меню специального пункта. Всего в выпадающем меню 4 пункта. Норма, выбыл, удален, заблокирован. в 2 последних вариантах запись из БД вообще должна удаляться, если выбрана норма - то строка остается в таблице `content`, если "выбыл" то должна переместиться в таблицу `archive` и там какое то время находится, с возможностью вернуть данные в основную таблицу. Ниже структуру таблиц приведу.
И вот как я пытался решить данную проблему:
	
	
	
		
Затем я попытался это сделать посредством оператора switch , ну и вот собственно код самого файла, который отвечает за редактирование строки в таблице
	
	
	
		
Сам файл редактирования таблицы работал. Но вот когда попытался добавить в него же функцию т.н. "архивирования" начались траблы... Помогите пожалуйста разобраться в чем ошибка.
								И вот как я пытался решить данную проблему:
		PHP:
	
	if(isset($red_status)=='Выбыл')
        {
            $sql =   "INSERT INTO archive SELECT * FROM content WHERE id='$rid';";
            $sql .=  "DELETE FROM content WHERE id='$rid'; ";
            if (!$mysqli->multi_query($sql)) {
                echo "Multi query failed: (" . $mysqli->errno . ") " . $mysqli->error;
            }
            else{
                echo "Executed successfully";
            }
        }
	
		PHP:
	
	<?php
session_start();
require "config.php";
if(isset($_SESSION['id']))
{
    if(isset($_POST['redsub']))
    {
        $rid=$_POST['rid'];
        $red_name=$_POST['rname'];
        $red_birth=$_POST['rbirth'];
        $red_sps= mysqli_real_escape_string($db, $_POST['rsps']);
        $red_temph=$_POST['rtemph'];
        $red_prevacc=$_POST['rprevacc'];
        $red_date=$_POST['rdate'];
        $ndate;
        $red_status=$_POST['rstatus'];
        $statusdate=date('Y-m-d');
        //Установка следующей даты
        switch ($red_prevacc)
        {
            case 'Значение1':
                $dateAt = strtotime(' + 6 months', strtotime($red_date));
                $ndate = date('Y-m-d', $dateAt);
                break;
            case 'Значение2':
                $dateAt = strtotime(' + 6 months', strtotime($red_date));
                $ndate = date('Y-m-d', $dateAt);
                break;
            case 'Значение3':
                $dateAt = strtotime(' + 6 months', strtotime($red_date));
                $ndate = date('Y-m-d', $dateAt);
                break;
            case 'Значение4':
                $dateAt = strtotime(' + 6 months', strtotime($red_date));
                $ndate = date('Y-m-d', $dateAt);
                break;
            case 'Значение5':
                $dateAt = strtotime(' + 3 months', strtotime($red_date));
                $ndate = date('Y-m-d', $dateAt);
                break;
            case 'Значение6':
                $dateAt = strtotime(' + 3 months', strtotime($red_date));
                $ndate = date('Y-m-d', $dateAt);
                break;
            default:
                $dateAt = strtotime(' + 12 months', strtotime($red_date));
                $ndate = date('Y-m-d', $dateAt);
                break;
        }
        switch ($red_status) {
            case 'Выбыл':
                $sql =   "INSERT INTO archive SELECT * FROM content WHERE id='$rid';";
                $sql .=  "DELETE FROM content WHERE id='$rid'; ";
                break;
            case 'Удален':
                $sql .=  "DELETE FROM content WHERE id='$rid'; "; ...
                break;
            case 'Заблокирован':
                $sql .=  "DELETE FROM content WHERE id='$rid'; "; ...
                break;
            default:
                $query6 = "UPDATE content SET `name` = '$red_name', `birth` = '$red_birth', `sps` = '$red_sps', `temph` = '$red_temph', `prevacc` = '$red_prevacc', `date` = '$red_date', `next_date` = '$ndate', status = '$red_status', date_status = '$statusdate' WHERE `id` = '$rid'";
        if($result1 = mysqli_query($db, $query6))
        {
            header("Location:".$site_url);
        }
        else
        {
            echo "Ошибка: " . mysqli_error($db);
        }
                break;
        }
    }
    else
    {
        echo "Некорректные данные";
    }
    mysqli_close($db);
}
else
{
    header("Location:".$site_url);
}
?>
	Вложения
- 
		
			
	
			
		
		
		33,2 KB Просмотры: 4
 - 
		
			
	
			
		
		
		26,6 KB Просмотры: 4
 
								
									Последнее редактирование: 
								
							
						
						
	
					
	            
				
				
