Mam problem podczas próby zaktualizowania tabeli po sprawdzeniu wiersza. Nie jestem pewien, czy "Jeśli" oświadczenie "jest błędne, jednak nie jestem do końca pewny, dlaczego aktualizacja SQL zwraca ten błąd. Nie byłbym zaskoczony, jeśli wstawka to zrobiła.

Oto część kodu:

$sql = "SELECT user_id FROM players WHERE user_id = '$id'";
$result = $connect->query($sql);

if($result->num_rows > 0)
{

    $sql = "UPDATE players SET user_id = '$Player->user_id', display_name = '$Player->display_name', attackPower = '$Player->attackPower]', defensePower = '$Player->defensePower'";
    if($connect->query($sql) === TRUE)
    {
        echo 'Table has been successfully updated.';
    }else{
        echo 'There has been a problem with updating the "players" table. <br>Error: '.$connect->error;
    }

}else{

    $sql = "INSERT INTO players(user_id, display_name, attackPower, defensePower) VALUES('$Player->user_id', '$Player->display_name', '$Player->attackPower', '$Player->defensePower')";
    if($connect->query($sql) === TRUE)
    {
        echo'Table has been successfully migrated.';

    }else{
        echo'Table migration has failed.';
    }

}

$connect->close();

wstawka ing działa dobrze. Byłbym wdzięczny za wszelkie wskazówki. Dzięki.

0
Makaveli_O 23 luty 2018, 16:55

3 odpowiedzi

Najlepsza odpowiedź

Twoje zapytanie o aktualizację powinno wyglądać:

    $sql = "UPDATE `players` SET `display_name` = '{$Player->display_name}', 
    `attackPower` = '{$Player->attackPower}', `defensePower` = '{$Player->defensePower'}  
    WHERE `user_id` = '{$Player->user_id}'";
0
Attila Naghi 23 luty 2018, 14:58

Powoduje błąd, ponieważ kolumny tożsamości nie są aktualizowane. Możesz zaktualizować wszystkie kolumny z wyjątkiem ich:

$sql = "UPDATE players SET display_name = '$Player->display_name', attackPower = '$Player->attackPower]', defensePower = '$Player->defensePower'";
0
Muhammad Vakili 23 luty 2018, 14:35

Jako @aynber i powiedział @julqas , problem był mój SQL brakowało , gdzie warunek . Dzięki za pomoc.

0
Makaveli_O 23 luty 2018, 14:42