Sınırlı başlık için özür dilerim. Bana kolay gidin, ben oldukça PHP ilerlemiştir değilim.
Benim functions.php ben "alıcıları" veya "gönderenler" zaten var olmadığını görmek için aşağıdaki 2 işlevleri var.
function getSenderId($fromAddress){
global $database;
$check = $database->query("SELECT * FROM custMod_senders WHERE email = '$fromAddress'");
if($check->fetchRow() > 0){
$id = $check->fetchRow();
return $id['id'];
}else{
return 0;
}
}
function getReceiverId($toAddress){
global $database;
$check = $database->query("SELECT * FROM custMod_receivers WHERE email = '$toAddress'");
if($check->fetchRow() > 0){
$id = $check->fetchRow();
return $id['id'];
}else{
return 0;
}
}
Şimdi benim komut ben aşağıdaki var.
$from = $_SESSION['fromAddress'];
$to = $_SESSION['addresses'];
$std = $_SESSION['possibleStd'];
if (!is_array($to)){
$to = array($to);
}
foreach($to as &$address) {
if(getReceiverID($address) == 0){
echo 'receiver not found';
$database->query("INSERT INTO custMod_receivers (email, possibleStd) VALUES ('$address', '$std')");
}
if(getSenderID($from) == 0){
echo 'sender not found';
$database->query("INSERT INTO custMod_senders (email) VALUES ('$from')");
}
$send_id = getSenderID($from);
$receive_id = getReceiverID($address);
$database->query("INSERT INTO custMod_lt_send_rec (send_id, receive_id) VALUES ('$send_id', '$receive_id')");
};
Benim vars, oturum ve tablenames tüm Peki bu döngü veya fonksiyon kurulumu ile yanlış .. mevcut ve kullanılabilir olduğu göz önüne alındığında?
Sorun) (foreach içinde de son sorguda olduğunu. bağlantı tablo çılgın tür sonuçlar veriyor.
EDIT: Sorun DB sonuçları, çift eksik ya da eksik olmasıdır. Benim 2 işlevleri yanlış sonuçlar vermektedir sanki ...