Mysql
 sql >> Base de données >  >> RDS >> Mysql

PHP / MYSQL Ajouter un bouton à la colonne

Changez votre code en celui-ci pour le rendre sécurisé et fonctionnel :

<?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!";

?>

Notez que vous n'avez pas besoin d'insérer un id dans le tableau. Si vous avez un champ d'auto-incrémentation id que MySQL créera automatiquement un identifiant pour vous.
mysql_real_escape_string() échappe les valeurs pour toi. Entourez toujours votre $var dans la requête avec ' guillemets simples ou mysql_real_escape_string() ne sera pas travail! Et ne l'utilisez jamais pour les noms de colonne/table ou de base de données, uniquement pour les valeurs.

Voir :ces questions pour plus d'informations :

Injection SQL en général :Comment fonctionne l'injection SQL depuis les "Bobby Tables " Travail de bande dessinée XKCD ?
protection contre l'injection SQL lors de l'utilisation de noms de tables dynamiques :Comment empêcher l'injection SQL avec des noms de table dynamiques ?