sql >> Database >  >> RDS >> Mysql

PHP / MYSQL Knop toevoegen aan kolom

Verander uw code hierin om het veilig en functioneel te maken:

<?php
// Connect to the database

mysql_connect ("localhost","Username","Password") 
  or die ('Error: ' . mysql_error());

echo "connected to database!";

mysql_select_db ("Database");

// Insert data into table

$Email= mysql_real_escape_string($_POST['Input2']);
$Name= mysql_real_escape_string($_POST['Input3']);
$Company= mysql_real_escape_string($_POST['Input4']);
$Price= mysql_real_escape_string($_POST['Input5']);

$action = mysql_real_escape_string('insert php code for button here');

$query = "INSERT INTO CustomerInformation 
         (Email,Name,Company,Price,Tab Count,Action) 
         VALUES
         ('$Email', '$Name', '$Company', '$Price', '$action') ";
mysql_query($query) or die ('Error updating database');

echo "Database updated successfully!";

?>

Merk op dat u geen id hoeft in te voeren de tafel in. Als u een autoincrement-veld id . heeft dan zal MySQL automatisch een id voor je aanmaken.
mysql_real_escape_string() ontsnapt aan waarden voor jou. Omring altijd uw $var in de zoekopdracht met ' enkele aanhalingstekens of mysql_real_escape_string() zal niet werk!En gebruik het nooit voor kolom-/tabel- of databasenamen, alleen voor waarden.

Zie:deze vragen voor meer info:

SQL-injectie in het algemeen:Hoe werkt de SQL-injectie van de "Bobby Tables " XKCD stripwerk?
bescherming tegen SQL-injectie bij gebruik van dynamische tabelnamen:Hoe SQL-injectie met dynamische tabelnamen voorkomen?



  1. Is er een manier om een ​​query uit te voeren binnen de tekenreekswaarde (zoals eval) in PostgreSQL?

  2. PostgreSQL 11 - Procedures

  3. Tijdelijke tabellen maken in MySQL Stored Procedure

  4. Substring ophalen in SQL Server