Aller au contenu
Top-Metin2.org - Vous êtes à la recherche d'un serveur Metin 2 ? ×
×
×
  • Créer...
  • 0

Problème liaison de pierre item IS


Stayms

Question

Bonjour a tous,

 

Je poste ce message car j'ai un petit problème au niveau du IS de mon site.

Lorsqu'un joueur achete une arme, celle ci va bien dans l'entrepot, mais une fois dans l'inventaire, il est impossible de lier de pierre dessus.

Pourtant lorsque je fait spawn une arme directement dans mon inventaire, les pierres se lient bien.

Je ne sais pas trop d'ou le problème peut venir, mais si vous avez des idées, merci de me les faires partagées.

 

Stayms

Mettez 11 imbéciles d'un coté, 10 philosophes de l'autre...
Les imbéciles l'emporteront !
C'est ca, la démocratie...

Lien vers le commentaire
Partager sur d’autres sites

  • Réponses 18
  • Créé
  • Dernière réponse

Meilleurs contributeurs dans cette question

Meilleurs contributeurs dans cette question

18 réponses à cette question

Messages recommandés

  • 0

mysql_query("INSERT INTO $db_player.item(id,vnum,owner_id,window,pos,socket2,count) VALUES((''),('". $vnum ."'),('". $id_sess ."'),('MALL'),('". $pos ."'),(select value0 from $db_player.item_proto where vnum=('" .$vnum ."')),('". $count ."'))");

 

Voici ma query, mais a aucun endroit le socket_pct n'est précisé dans la table item

Mettez 11 imbéciles d'un coté, 10 philosophes de l'autre...
Les imbéciles l'emporteront !
C'est ca, la démocratie...

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Essaie avec ceci:

mysql_query("INSERT INTO $db_player.item(id,vnum,owner_id,window,pos,socket0,socket1,socket2,count) VALUES((''),('". $vnum ."'),('". $id_sess ."'),('MALL'),('". $pos ."'),('1'),('1'),('1'),('". $count ."'))");

" socket_pct " n'est pas présent dans l'exécution de query car tu pourras remarquer que dans aucun cas, " socket_pct " n'existe dans la table " item " de ta base de données " player ".

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Bonsoir,

 

Petite information en vue de la tronche de ta query:

 

mysql_query("INSERT INTO $db_player.item(id,vnum,owner_id,window,pos,socket0,socket1,socket2,count) VALUES((''),('". $vnum ."'),('". $id_sess ."'),('MALL'),('". $pos ."'),('1'),('1'),('1'),('". $count ."'))");

 

pas besoin de parenthèses autour des valeurs que tu insert, ça fait du blabla en plus à transmettre et à interpréter.

 

mysql_query("INSERT INTO $db_player.item(id,vnum,owner_id,window,pos,socket0,socket1,socket2,count) VALUES('','". $vnum ."','". $id_sess ."','MALL','". $pos ."','1','1','1','". $count ."')");

 

Au passage, je ne sais pas si ton serveur a des joueurs mais tu risques d'être très rapidement confronté à une perte d'items achetés dans ta boutique car tu laisses l'auto-increment faire le boulot, et souvent le serveur vient insérer des items qui écrasent l'id de l'item acheté en boutique. Il serait donc judicieux que tu gères toi même cet id pour éviter toute perte d'item.

 

Onyx.

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Oui, mon serveur commence a ce remplire, mais comment pense tu queje pourrais géré moi meme l'ID des items ? En incrémentant un gros nombre a tous mes items IS par exemple ? Histoire de ne pas me retrouvé avec des ID identiques pour autant qu'il n'incrémente pas en fonctione de l'ID le plus haut, mais bien en fonction de la place libre ?

 

Je ne sais pas, si tu as une idée, je suis la :)

 

Merci pour l'info

Mettez 11 imbéciles d'un coté, 10 philosophes de l'autre...
Les imbéciles l'emporteront !
C'est ca, la démocratie...

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Je ne comprend pas vraiment ce que ca change, a part si mon site ce base sur l'ID le plus haut et la game sur l'ID libre entre les deux, c'est le cas ?

Mettez 11 imbéciles d'un coté, 10 philosophes de l'autre...
Les imbéciles l'emporteront !
C'est ca, la démocratie...

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Sincèrement non, quand tu fait un insert, la clé primaire est OBLIGATOIREMENT unique.

Tant que ton id est inférieur au maximum de ta variable ici je crois que c'est un int(11) donc un chiffre à 11 chiffre, tu peux donc avoir au total 99.999.999.999 tuples (lignes) dans ta table

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Okk, je pense aussi que la chanque qu'un tel cas se produise est sans doute nul :)

Mettez 11 imbéciles d'un coté, 10 philosophes de l'autre...
Les imbéciles l'emporteront !
C'est ca, la démocratie...

Lien vers le commentaire
Partager sur d’autres sites

Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.


  • brilliantdiscord_widget
  • Flux d'Activité

    1. 21

      Metin2 en 2020 peut-on en parler?

    2. 0

      METIN2Project

    3. 3

      Ressources - UnPack - Metin2 Client - Officiel

    4. 0

      Barre des tâches d'argent étendue

    5. 16

      Redémarrage automatique des channels

    6. 16

      Multi Logo GM / SGM / GA

  • En ligne récemment

    • Aucun utilisateur enregistré regarde cette page.

Information importante

Conditions d’utilisation / Politique de confidentialité / Règles / Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.