par
Hubert Roksor » 07 févr. 2006, 18:27
Pour peu que ta version supporte les tables dérivées (MySQL 5.0.x je pense) tu dois pouvoir faire ça:
$sql = "INSERT INTO frm_forums
SELECT '', '" . $_POST['forum_cat_id'] . "', '" . $_POST['forum_title'] . "', '" . $_POST['forum_description'] . "', tmp.max_place + 1
FROM (
SELECT MAX(forum_place) AS max_place
FROM frm_forums
) AS tmp";
if (!mysql_query($sql))
{
die('Erreur : ' . mysql_error());
)
Mais comme le dit albat, l'intérêt est assez faible. Attention tout de même à valider ce qui se trouve dans les $_POST, par ex:
$_POST['forum_title'] = mysql_real_escape_string($_POST['forum_title'])
...sinon il pourrait t'arriver de mauvaises surprises. De plus, les nombres ne devraient pas se trouver entre guillemets.
Pour peu que ta version supporte les tables dérivées (MySQL 5.0.x je pense) tu dois pouvoir faire ça:
[php]$sql = "INSERT INTO frm_forums
SELECT '', '" . $_POST['forum_cat_id'] . "', '" . $_POST['forum_title'] . "', '" . $_POST['forum_description'] . "', tmp.max_place + 1
FROM (
SELECT MAX(forum_place) AS max_place
FROM frm_forums
) AS tmp";
if (!mysql_query($sql))
{
die('Erreur : ' . mysql_error());
)[/php]
Mais comme le dit albat, l'intérêt est assez faible. Attention tout de même à valider ce qui se trouve dans les $_POST, par ex: [php]$_POST['forum_title'] = mysql_real_escape_string($_POST['forum_title'])[/php]
...sinon il pourrait t'arriver de mauvaises surprises. De plus, les nombres ne devraient pas se trouver entre guillemets.