2016-06-15 8 views
1

Ich versuche, Daten in Tabelle_1 einzufügen und dann in zweite Tabelle einzufügen, wenn die neue eingefügte ID nicht verfügbar ist, falls verfügbar, dann aktualisiere sie. Bellow ist mein Code, sag mir bitte, was ich falsch mache.MySQL In die erste Tabelle einfügen und auf der zweiten Tabelle aktualisieren

<?php 
    $name='Name'; 
    $pass='Passsword'; 
    $rid='FR200000'; 


    $sql = "INSERT INTO table_1 (id,name,pass) VALUES('".$rid."','".$name."','".$pass."')"; 
    $res = mysql_query($sql); 
    if(!$res){ 
     echo'Failed to insert'; 

    }else{ 
     $sql = "SELECT id FROM site_settings WHERE id = '".$rid."'"; 
     $res = mysql_query($sql); 
     $get_id = mysql_fetch_assoc($res); 

     if (!$get_id==$rid){ 
      $site_url = 'www.example.com'; 
      $site_email ='[email protected]'; 

      $sql = "INSERT INTO site_settings (id,site_url,site_email) VALUES('".$rid."','".$site_url."','".$site_email."')"; 
      $res = mysql_query($sql); 
       if(!$res) return 1; 
      return 99; 
      } 
     if ($get_id==$rid){ 

      $sql = "UPDATE site_settings SET site_url = '" . $site_url . "', site_email = '" . $site_email . "' WHERE ID = '".$rid."'";  
      $res = mysql_query($sql); 
       if(!$res) return 1; 
      return 99; 
      } 
     ?> 
+0

Sie sind nicht holen Datenformular Abfrage auswählen !! Müssen Sie Daten von Select-Abfrage abholen, dann verwenden Sie 'if (! $ Get_id == $ rid) {' – Saty

+0

@Saty Ich habe meine Frage oben aktualisieren, bitte überprüfen Sie, ob es in Ordnung ist oder nicht? – Firefog

Antwort

2

mysql_query()

Für SELECT, SHOW, DESCRIBE, EXPLAIN und andere Aussagen zurückkehr resultset

$sql = "SELECT id FROM site_settings WHERE id = '".$rid."'"; 
     $get_id = mysql_query($sql); 

Sie werden nicht direkt mit $rid

Ergebnismenge vergleichen
if (!$get_id==$rid){ 

Sie benötigen Daten holen ersten

$row = mysql_fetch_assoc($res); 
$get_id=$row['id'];// fetch data 

Dann

if (!$get_id==$rid){ 
// YOUR code 

HINWEIS vergleichen: - mysql ist veraltet stattdessen Mysqli OR PDO

+0

Dank können Sie mir zeigen, wie diese Abfrage auf mysqli? – Firefog

+0

lesen Sie http://php.net/manual/en/book.mysqli.php – Saty

Verwandte Themen