sql >> Database >  >> RDS >> Mysql

MYSQL voegt geen informatie toe aan mijn database

u heeft een ongeldige invoegsyntaxis dit is de geldige syntaxis

INSERT INTO customers (field1, field2) VALUES (val1, val2);

ZIE DOCUMENTATIE

ook heb je een serieuze kwetsbaarheid voor SQL-injectie.. je zou HIER voor hulp daarbij

Ik zou je aanraden geparameteriseerde queries en voorbereide statements te gebruiken... deze ZO POST dekt het mooi af

BEWERKEN:

zodat ik niet alleen een link geef, alleen het antwoord is hier een voorbeeld van wat u moet doen

$mysqli = new mysqli("server", "username", "password", "database_name");

if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}
$qry = $mysqli->prepare('INSERT INTO customers (name, phone, type, section, email, address, business, service, notes) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)');
$qry->bind_param('s', $name, $phone_num, $sec_num, $email, $cus_type, $business, $address, $service, $notes);

// can do it in one statement rather than multiples..
//$qry->bind_param('s', $name);
//$qry->bind_param('s', $phone_num);
//$qry->bind_param('s', $sec_num);
//$qry->bind_param('s', $email);
//$qry->bind_param('s', $cus_type);
//$qry->bind_param('s', $business);
//$qry->bind_param('s', $address);
//$qry->bind_param('s', $service);
//$qry->bind_param('s', $notes);

$qry->execute();
$qry->close();

EDIT2:

je moet nieuw zijn in het programmeren.. je if()-statement wordt ALTIJD uitgevoerd... wat betekent dat je het altijd in de database gaat invoegen.. dit is waarom..

if ($cus_type = $_POST['Corporate']){ hier is $cus_type gelijk aan iets anders aka $_POST['cusType'] maar in het if-statement wijst u het toe aan $_POST['Corporate']... die altijd wordt uitgevoerd omdat het een true-statement is..dit is hoe als statements logisch worden uitgevoerd..

if(boolean statement){
    //executes when true
};

if(true){
    //always executes
};

if('a' == 'b'){
    //will not execute
};

$a = 'a';
$b = 'b';
if($a == $b){
    //will not execute
};

if($a = $b){
    //will always execute because its assigning the value which is a boolean true statement.
};


  1. Hoe ELKE / SOMMIGE logische operator in SQL Server te gebruiken - SQL Server / TSQL-zelfstudie, deel 127

  2. Mysqldump gelanceerd door cron en wachtwoordbeveiliging

  3. MYSQL-installatie met een .NET winforms-app

  4. Optionele argumenten in WHERE-clausule