$v) { if (array_search($k, $key) == "PRIMARY KEY") $debut = "

nouvelle insertion d'une $k dans la table $nom

"; else { ereg("^ *([A-Za-z]+) *(\(([^)]+)\))?", $v, $m); $type = $m[1]; $t = $m[3]; $s = ''; if ($m[2]) { if (is_numeric($t) && ($t <= 32)) $s = " sizemax='$t' size='" . ($t * 2) . "'"; else $type = 'BLOB'; } switch (strtoupper($type)) { case INT: case BIGINT: case CHAR: case VARCHAR: case TINYTEXT: case TINYBLOB: $s = "\n"; break; case DATETIME: $s = ''; $hiddens .= "\n"; break; case TIMESTAMP: $s = ''; break; case LONGBLOB: $s = "\n"; break; default: $t = floor($t / 64)+1; $s = "\n"; break; } if ($s) $total .= "$k\n$s($v)\n\n"; } } return "
\n" . $debut . $total . "
$hiddens
"; } function table_extra_post($nom) { foreach ($HTTP_POST_VARS as $k => $v) { if ($v && ($v != 'NOW()')) $v = "'" . addslashes($v) . "'"; if ($v) { $n[] = $k; $i[] = $v;} } $r = "INSERT INTO $nom (" . join(', ', $n) . ") VALUES (" . join(', ', $i) . ")"; if (! spip_query($r)) return "Echec de la requête $r"; else return "Insertion réussie sous le numéro: " . mysql_insert_id(); } echo ""; $nom = $GLOBALS['HTTP_GET_VARS']['table']; $file = $GLOBALS['HTTP_GET_VARS']['file']; if (!$file) $file = $nom; if ($file && file_exists($file . '.php')) include($file . '.php'); else if (file_exists($file . '.php3')) include($file . '.php3'); if (!($nom && is_array($$nom))) {echo "Le paramètre table (valeur: '" . $nom . "') n'indique pas une table SQL décrite dans le fichier $file" . ".php";} else { if ($_SERVER['REQUEST_METHOD'] == 'GET') echo table_extra_get($nom, $$nom, $GLOBALS[$nom . '_key']); else echo table_extra_post($nom); } ?>