2 Insert in einer Variable Problem

03/22/2016 00:23 Body@Developer#1
Guten Tag!

Ich würde es gerne so haben:

Normales Register Script:

-Gibt Daten ein
-Daten werden in der Tabelle t_user_data gespeichert

hat auch alles geklappt ohne probleme.

Wollte aber das hinzufügen.
-Wenn man sich registriert
-daten werden gespeichert in der Tabelle t_user_data und tabelle kunden, jeder erhaltet eine Kundennummer bei der Registrierung. Doch es erscheint kein Eintrag.


Normales Regiscript klappt:
PHP Code:
    if(!$error) {
    
$sql"INSERT INTO t_user_data(t_mail,t_password,t_ip,date_insert) VALUES (?, ?, ?, NOW())";
    
$insert $vb->prepare($sql);
    
$insert->BindValue(1$email);
    
$insert->BindValue(2password_hash($passwordPASSWORD_BCRYPT$option));
    
$insert->BindValue(3$ip);
    if(
$insert->execute()) {
    echo 
'Account erfolgreich erstellt';
    }
    } 

Funktoniert nicht:
PHP Code:
    $k_nummer rand(1004,4000);
    
    if(!
$error) {
    
$sql"INSERT INTO t_user_data(t_mail,t_password,t_ip,date_insert) VALUES (?, ?, ?, NOW())";
    
$sql .= "INSERT INTO kunden(k_nummer) VALUES (?)";
    
$insert $vb->prepare($sql);
    
$insert->BindValue(1$email);
    
$insert->BindValue(2password_hash($passwordPASSWORD_BCRYPT$option));
    
$insert->BindValue(3$ip);
    
$insert->BindValue(4$k_nummer);
    if(
$insert->execute()) {
    echo 
'Account erfolgreich erstellt';
    }
    } 
03/22/2016 00:35 Devsome#2
Es klappt nicht, weil dein SQL Statement so ausschaut.
Code:
INSERT INTO t_user_data(t_mail,t_password,t_ip,date_insert) VALUES (?, ?, ?, NOW()) INSERT INTO kunden(k_nummer) VALUES (?)
Du könntest dir eine Funktion schreiben, wo du jeweils nur Parameter/Variablen übergibst und er dann ein Query ausführt.
03/23/2016 18:14 Chicken.ShooT#3
PHP Code:
    $k_nummer rand(1004,4000);
    
    if(!
$error) {
    
$sql"BEGIN;
INSERT INTO t_user_data(t_mail,t_password,t_ip,date_insert) VALUES (?, ?, ?, NOW());
INSERT INTO kunden(k_nummer) VALUES (?);
COMMIT;"
;
    
$insert $vb->prepare($sql);
    
$insert->BindValue(1$email);
    
$insert->BindValue(2password_hash($passwordPASSWORD_BCRYPT$option));
    
$insert->BindValue(3$ip);
    
$insert->BindValue(4$k_nummer);
    if(
$insert->execute()) {
    echo 
'Account erfolgreich erstellt';
    }
    } 
Das sollte auch gehen.
03/24/2016 13:16 Body@Developer#4
Quote:
Originally Posted by Chicken.ShooT View Post
PHP Code:
    $k_nummer rand(1004,4000);
    
    if(!
$error) {
    
$sql"BEGIN;
INSERT INTO t_user_data(t_mail,t_password,t_ip,date_insert) VALUES (?, ?, ?, NOW());
INSERT INTO kunden(k_nummer) VALUES (?);
COMMIT;"
;
    
$insert $vb->prepare($sql);
    
$insert->BindValue(1$email);
    
$insert->BindValue(2password_hash($passwordPASSWORD_BCRYPT$option));
    
$insert->BindValue(3$ip);
    
$insert->BindValue(4$k_nummer);
    if(
$insert->execute()) {
    echo 
'Account erfolgreich erstellt';
    }
    } 
Das sollte auch gehen.

Danke! Genau das wollte ich wissen.