Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

डुप्लिकेट टेक्स्टफील्ड से डेटाबेस में डालें यदि खाली नहीं है php sql

सबसे पहले जिस तरह से आपने अपने चर परिभाषित किए हैं उस समय Author_ID2 को कभी परिभाषित नहीं किया गया है:

$AuthorTitle = mysqli_real_escape_string($con, ($_POST['AuthorTitle']));
$AuthorTitle = mysqli_real_escape_string($con, ($_POST['AuthorTitle_ID2']));

यहां आप बस $AuthorTitle . को ओवरराइड करें $_POST['AuthorTitle_ID2'] . के मान के साथ , और $AuthorTitle_ID2 . को परिभाषित न करें बिल्कुल।

अगला, जैसा कि आपके पास SQL ​​कथन है, वह केवल दूसरे author . को लिंक करेगा study . के साथ casestudy . में क्योंकि LAST_INSERT_ID() अंतिम सम्मिलित रिकॉर्ड की आईडी केवल तभी लौटाएगा, भले ही वास्तव में एक कथन द्वारा कई रिकॉर्ड डाले गए हों।

और अंत में, MySQL में IF स्टेटमेंट है :

$AuthorTitle       = mysqli_real_escape_string($con, ($_POST['AuthorTitle']));
$AuthorTitle_ID2   = mysqli_real_escape_string($con, ($_POST['AuthorTitle_ID2']));
$F_Name            = mysqli_real_escape_string($con, ($_POST['first_name']));
$F_Name_ID2        = mysqli_real_escape_string($con, ($_POST['first_name_ID2']));
$L_Name            = mysqli_real_escape_string($con, ($_POST['last_name']));
$L_Name_ID2        = mysqli_real_escape_string($con, ($_POST['last_name_ID2']));
$Email             = mysqli_real_escape_string($con, ($_POST['email']));
$Email_ID2         = mysqli_real_escape_string($con, ($_POST['email_ID2']));
$Contactauthor     = mysqli_real_escape_string($con, ($_POST['contact']));
$Contactauthor_ID2 = mysqli_real_escape_string($con, ($_POST['contact_ID2']));
$Title             = mysqli_real_escape_string($con, ($_POST['Title']));
$Summary           = mysqli_real_escape_string($con, ($_POST['Summary']));

mysqli_multi_query($con,"
START TRANSACTION;
    INSERT INTO study(Title, Summary)
    VALUES('$Title','$Summary');
    SET @StudyId = LAST_INSERT_ID();

    INSERT INTO author(AuthorTitle, F_Name, L_Name, Email, Contact)
    VALUES('$AuthorTitle','$F_Name','$L_Name','$Email','$Contactauthor');
    SET @AuthorId = LAST_INSERT_ID();

    INSERT INTO casestudy(AuthorId, StudyId, Submitted)
    VALUES(@AuthorId, @StudyId, NOW());

    IF ('$AuthorTitle_ID2' <> '' OR '$F_Name_ID2' <> '' OR '$L_Name_ID2' <> '' OR '$Email_ID2' <> '' OR '$Contactauthor_ID2' <> '') THEN
        INSERT INTO author(AuthorTitle, F_Name, L_Name, Email, Contact)
        VALUES('$AuthorTitle_ID2','$F_Name_ID2','$L_Name_ID2','$Email_ID2','$Contactauthor_ID2');
        SET @AuthorId = LAST_INSERT_ID();

        INSERT INTO casestudy(AuthorId, StudyId, Submitted)
        VALUES(@AuthorId, @StudyId, NOW());
    END IF;
COMMIT;
");



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL दृश्य

  2. एक समय श्रृंखला में विशेष मानदंडों को पूरा करने वाली लगातार वस्तुओं का पता लगाएं

  3. Ubuntu पर अप्राप्य Percona/MySQL स्थापित करना

  4. कैसे जांचें कि PHP के साथ MySQL में उपयोगकर्ता पहले से मौजूद है या नहीं?

  5. Mysql में पंक्तियों के एक सेट पर संचयी योग