Version: 1.2
Type: Function
Category: Databases
License: Other
Description: The mysql_fetch_assoc "converts" a row from a table into an associative array. The mysql_insert_array "converts" an associative array into a row in a table.
<?php
function mysql_insert_array ($my_table, $my_array) {
// Please contact me at suggestions@lunlun.ro
// for any comments you wish to make. Thank you!
// Version 1.2
// 31.aug..2006 12:41
// Copyright: you may do whatever you wish (and can ;-) ) with this code
// Find all the keys from the array $my_array
$keys = array_keys($my_array);
// Find the number of the keys
$keys_number = count($keys);
// Generate the column name for the $sql query
$column_names = "(";
$values = "(";
for ($i = 0; $i < $keys_number; $i++) {
$column_name = $keys[$i];
// We don't add "," after the last one
if ($i == ($keys_number - 1)) {
$column_names .= "`$keys[$i]`";
$values .= "'$my_array[$column_name]'";
} else {
$column_names .= "`$keys[$i]`" . ", ";
$values .= "'$my_array[$column_name]'" . ", ";
}
}
// Proper end the column name and the value
$column_names .= ")";
$values .= ")";
// We compose the query
$sql = "insert into `$my_table` ";
$sql .= $column_names;
$sql .= ' values ';
$sql .= $values;
$result = mysql_query($sql);
if ($result)
{
echo "The row was added sucessfully";
return true;
}
else
{
echo ("The row was not added<br>The error was" . mysql_error());
return false;
}
}
?>
Example:
<?php
// Include the function's code
require_once ("mysql_insert_array.php");
// Establish the connection with the database
require_once ("dbconnect.php");
// The database has one table, called `test`, created as following:
// CREATE TABLE `test`
// (
// `one` varchar(20) default NULL,
// `two` varchar(20) default NULL
// )
// TYPE=MyISAM;
// We create the $row array
$row = array (
"one" => "first",
"two" => "second"
);
// We want to insert the $row into $table
$table = "test";
// We insert the array into the database
mysql_insert_array ($table, $row);
?>
The dbconnect.php:
<?php
// *************************************************
// Set User Access
// *************************************************
$hostname = "localhost";
$username = " "; // Change your username
$password = " "; // Change your password
$database = " "; // Change your database's name
// *************************************************
// Database Connection
// *************************************************
$connection = mysql_connect($hostname, $username, $password) or die(mysql_error());
$database = mysql_select_db($database, $connection) or die(mysql_error());
?>