За последние 24 часа нас посетил 16691 программист и 1678 роботов. Сейчас ищут 880 программистов ...

Замена пустого поля на поле из другой таблицы

Тема в разделе "PHP для новичков", создана пользователем Grandhustla, 16 фев 2012.

  1. Grandhustla

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

    С нами с:
    16 фев 2012
    Сообщения:
    2
    Симпатии:
    0
    Здравствуйте. У меня есть база данных почтовых отправлений и вот мне нужно реализовать отправку форму о письме в БД. В общем если ставлю пустое поле, то он пишет что не ввёл все данные исходя из кода PHP. Значит мне нужно сделать так, чтобы при пустом поле, скажем адрес, он брал поле из другой Базы данных и вставлял его в это пустое поле. Я уже перепробовал и result и инсерт, и update. Ничего не получается. помогите пожалуйста





    <html>
    <body>
    <head>
    <title>Добавление почтового отправления</title>
    </head>

    <?php
    $link = mysql_connect("localhost", "root", "") or die (mysql_error());
    mysql_select_db("email", $link) or die(mysql_error());
    $query = "SET NAMES 'cp1251'";
    mysql_query ($query);

    $ID = $_POST['ID'];
    $Imya_naselennogo_punkta_otpravitelya = $_POST['Imya_naselennogo_punkta_otpravitelya'];
    $Index_otpravitelya = $_POST['Index_otpravitelya'];
    $Familya_otpravitelya = $_POST['Familya_otpravitelya'];
    $Imya_otpravitelya = $_POST['Imya_otpravitelya'];
    $Adres_otpravitelya = $_POST['Adres_otpravitelya'];
    $Index_poluchatelya = $_POST['Index_poluchatelya'];
    $ID_Tip_naselennogo_punkta = $_POST['ID_Tip_naselennogo_punkta'];
    $Imya_naselennogo_punkta_poluchatelya = $_POST['Imya_naselennogo_punkta_poluchatelya'];
    $Adres_poluchatelya = $_POST['Adres_poluchatelya'];
    $Familiya_poluchatelya = $_POST['Familiya_poluchatelya'];
    $Imya_poluchatelya = $_POST['Imya_poluchatelya'];
    $ID_Tip_pochti = $_POST['ID_Tip_pochti'];
    $ID_Klass_dostavki = $_POST['ID_Klass_dostavki'];

    if (empty($ID) or empty($Imya_naselennogo_punkta_otpravitelya) or empty($Index_otpravitelya) or empty($Familya_otpravitelya) or empty($Imya_otpravitelya) or empty($Adres_otpravitelya) or empty($Index_poluchatelya) or empty($ID_Tip_naselennogo_punkta) or empty($Imya_naselennogo_punkta_poluchatelya) or empty($Adres_poluchatelya) or empty($Familiya_poluchatelya) or empty($Imya_poluchatelya) or empty($ID_Tip_pochti) or empty($ID_Klass_dostavki))
    {
    exit ("<p align = 'center'><B><I>Вы ввели не всю информацию, вернитесь назад и повторите попытку!</I></B></p>");
    }


    $result = mysql_query("INSERT INTO `vedom`
    (`ID`,`Imya_naselennogo_punkta_otpravitelya`,`Index_otpravitelya`,`Familya_otpravitelya`,`Imya_otpravitelya`,`Adres_otpravitelya`,`Index_poluchatelya`,`ID_Tip_naselennogo_punkta`,`Imya_naselennogo_punkta_poluchatelya`,`Adres_poluchatelya`,`Familiya_poluchatelya`,`Imya_poluchatelya`,`ID_Tip_pochti`,`ID_Klass_dostavki`) VALUES ('$ID', '$Imya_naselennogo_punkta_otpravitelya', '$Index_otpravitelya', '$Familya_otpravitelya', '$Imya_otpravitelya', '$Adres_otpravitelya', '$Adres_poluchatelya', '$Index_poluchatelya', '$ID_Tip_naselennogo_punkta', '$Imya_naselennogo_punkta_poluchatelya', '$Familiya_poluchatelya', '$Imya_poluchatelya', '$ID_Tip_pochti', '$ID_Klass_dostavki')",$link);

    if ($result) { echo("<p align = 'center'><B><I>Почтовое отправление успешно внесено в базу данных!</I></B></P>");}
    else {
    echo ("<p align = 'center'><B><I>Ошибка! Проверьте правильность введённых данных.</I></B></P>");
    }
    echo mysql_error();
    ?>

    </body>
    </html>
     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    а вы когда пробовали понимали что именно вы делаете???

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