Aide Requete SQL (pourtant Simple, je pense.)
Bleadd
-
MastercroW Messages postés 1259 Statut Membre -
MastercroW Messages postés 1259 Statut Membre -
Bonjour,
J'ai un script PHP qui permet d'ajouter une ligne dans une base de données. (un id d'objet) Jusque la tout va bien.
Le seul probleme c'est que si le personnage a deja un objet de ce type sur lui, je ne peut pas rajouter d'autres objets de ce type.
Il faut donc rajouter une condition ..
If count != 0 faire Update ..... Mais je n'y arrive pas :S
Voila le code :
Si quelqu'un y arrive..
Cordialement,
Bleadd
J'ai un script PHP qui permet d'ajouter une ligne dans une base de données. (un id d'objet) Jusque la tout va bien.
Le seul probleme c'est que si le personnage a deja un objet de ce type sur lui, je ne peut pas rajouter d'autres objets de ce type.
Il faut donc rajouter une condition ..
If count != 0 faire Update ..... Mais je n'y arrive pas :S
Voila le code :
<form action="" method="POST">
<table>
<tr><td>Character Name:</td><td><input type="text" name="name"></td></tr>
<tr><td><input type="submit" value="Insert" name="submit"></td></tr>
</table>
</form>
<?php
$name = $_POST['name'];
$submit = $_POST['submit'];
if ($submit) {
include ('connect.php');
if ($name) {
$row = mysql_fetch_assoc(mysql_query("SELECT * FROM characters WHERE char_name='".$name."'"));
$obj_id = $row[obj_Id];
mysql_query("INSERT INTO 'items' ('owner_id', 'object_id', 'item_id', 'count', 'enchant_level', 'loc', 'loc_data', 'price_sell', 'price_buy', 'time_of_use', 'custom_type1', 'custom_type2', 'mana_left') VALUES
(".$obj_id.", 0, 4037, 1, 0, 'INVENTORY', 0, 0, 0, NULL, 0, 0, '-1');");
echo "<b>Your Item Has Been Inserted.</b>";
}
else {
echo "<b>Failed.</b>";
}
}
?>
}
}
Si quelqu'un y arrive..
Cordialement,
Bleadd
A voir également:
- Aide Requete SQL (pourtant Simple, je pense.)
- 14 simple - Guide
- Simple pdf - Télécharger - PDF
- Simple ocr - Télécharger - Bureautique
- Simple file locker - Télécharger - Sécurité
- Simple comic - Télécharger - Vie quotidienne
10 réponses
fait plusieurs requetes ...
si une demande est envoyée :
- d'abord une requete pour savoir si un objet de ce type est déja porté.
puis une condition en php
si pas d'objet de ce type :
- requete pour insere l'objet
sinon -> si deja un objet de ce type :
- requete pour modifier l'objet
si une demande est envoyée :
- d'abord une requete pour savoir si un objet de ce type est déja porté.
puis une condition en php
si pas d'objet de ce type :
- requete pour insere l'objet
sinon -> si deja un objet de ce type :
- requete pour modifier l'objet
Merci pour la réponse
Oui mais je sais pas les écrire, c'est ca le soucis..
Je sais faire que des requetes de base, mais faire des requetes avec des variables, genre recuperer le nombre contenu dans le n-uplets "count" lui rajouter 3, et faire une condition avec ce nombre, je sais pas faire :S
Oui mais je sais pas les écrire, c'est ca le soucis..
Je sais faire que des requetes de base, mais faire des requetes avec des variables, genre recuperer le nombre contenu dans le n-uplets "count" lui rajouter 3, et faire une condition avec ce nombre, je sais pas faire :S
Hello,
Moi je trouve ça assez simple. As-tu essayé de relier ton problème à une autre page que tu as faites ? Par exemple comme une page d'inscription, ou le pseudo ne doit pas être égal à celui qui existe déjà en base de donnée. Par exemple je dis bien.
Mais je ne connais pas bien ta base de donnée pour que je t'aide, peux tu m'expliquer en français ce que sa donne (avec les noms des colonnes).
Sinon, si tu veux te débrouiller tout seul il faut que tu fasse un if avant ta mysql_query, et si c'est OK, else fera exécuter ta requête.
Moi je trouve ça assez simple. As-tu essayé de relier ton problème à une autre page que tu as faites ? Par exemple comme une page d'inscription, ou le pseudo ne doit pas être égal à celui qui existe déjà en base de donnée. Par exemple je dis bien.
Mais je ne connais pas bien ta base de donnée pour que je t'aide, peux tu m'expliquer en français ce que sa donne (avec les noms des colonnes).
Sinon, si tu veux te débrouiller tout seul il faut que tu fasse un if avant ta mysql_query, et si c'est OK, else fera exécuter ta requête.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
En gros j'ai une data avec obj_id (qui correspond a l'id du player), itemid (l'id de l'objet) et count (qui represente le nombre de l'item).
Mais mon probleme c'est que je sais pas recuperer le nombre qu'il y a dans count.. Pour en faire une condition...
Mais mon probleme c'est que je sais pas recuperer le nombre qu'il y a dans count.. Pour en faire une condition...
if ($submit) {
include ('connect.php');
//hardcoding Kill Me
if ($name) {
$row = mysql_fetch_assoc(mysql_query("SELECT * FROM characters WHERE char_name='".$name."'"));
$obj_id = $row['obj_Id'];
$row2 = mysql_fetch_assoc(mysql_query("SELECT * FROM items WHERE obj_id='".$obj_id."'"));
$count= $row2['count'];
if ($count = 0) {
mysql_query("INSERT INTO 'items' ('owner_id', 'object_id', 'item_id', 'count', 'enchant_level', 'loc', 'loc_data', 'price_sell', 'price_buy', 'time_of_use', 'custom_type1', 'custom_type2', 'mana_left') VALUES
(".$obj_id.", 0, 4037, 1, 0, 'INVENTORY', 0, 0, 0, NULL, 0, 0, '-1');");
echo "<b>Your Item Has Been Inserted.</b>";
}
else
{
$count = $count + 3;
mysql_query("UPDATE 'frozen'.'items' SET 'count' = '".$count."' WHERE 'items'.'obj_id' =".$obj_id.";");
echo "<b>Your Item Has Been Inserted.</b>";
}
else {
echo "<b>This item does not exist.</b>";
}
}
}
?>
Mais marche pas..
include ('connect.php');
//hardcoding Kill Me
if ($name) {
$row = mysql_fetch_assoc(mysql_query("SELECT * FROM characters WHERE char_name='".$name."'"));
$obj_id = $row['obj_Id'];
$row2 = mysql_fetch_assoc(mysql_query("SELECT * FROM items WHERE obj_id='".$obj_id."'"));
$count= $row2['count'];
if ($count = 0) {
mysql_query("INSERT INTO 'items' ('owner_id', 'object_id', 'item_id', 'count', 'enchant_level', 'loc', 'loc_data', 'price_sell', 'price_buy', 'time_of_use', 'custom_type1', 'custom_type2', 'mana_left') VALUES
(".$obj_id.", 0, 4037, 1, 0, 'INVENTORY', 0, 0, 0, NULL, 0, 0, '-1');");
echo "<b>Your Item Has Been Inserted.</b>";
}
else
{
$count = $count + 3;
mysql_query("UPDATE 'frozen'.'items' SET 'count' = '".$count."' WHERE 'items'.'obj_id' =".$obj_id.";");
echo "<b>Your Item Has Been Inserted.</b>";
}
else {
echo "<b>This item does not exist.</b>";
}
}
}
?>
Mais marche pas..
if ($name) {
$row = mysql_fetch_assoc(mysql_query("SELECT * FROM characters WHERE char_name='".$name."'"));
$obj_id = $row['owner_id'];
$row2 = mysql_fetch_assoc(mysql_query("SELECT * FROM items WHERE owner_id='".$obj_id."'"));
$count= $row2['count'];
if ($count == 0) {
mysql_query("INSERT INTO 'items' ('owner_id', 'object_id', 'item_id', 'count', 'enchant_level', 'loc', 'loc_data', 'price_sell', 'price_buy', 'time_of_use', 'custom_type1', 'custom_type2', 'mana_left') VALUES
(".$obj_id.", 0, 4037, 3, 0, 'INVENTORY', 0, 0, 0, NULL, 0, 0, '-1');");
echo "<b>Your Item Has Been Inserted.</b>";
}
else
{
$count = $count + 3;
mysql_query("UPDATE 'frozen'.'items' SET 'count' = '".$count."' WHERE 'items'.'obj_id' =".$obj_id.";");
echo "<b>Your Item Has Been Inserted.</b>";
}
else {
echo "<b>This item does not exist.</b>";
}
}
}
Ca ne marche pas