8797 sujets

Développement web côté serveur, CMS

je suis sur oscommerce , j'ai effectuer une requète hier pour permettre à mes client de pas créer un compte et de pouvoir faire des achat sans compte!

le probleme est que maintenant une fois rentrer les information de livraisons j'ai un message d'erreur qui s'affiche quand le site rentre les informations dans la base de donnée!

le message est celui-ci!

a écrit :
1062 - Duplicate entry '24' for key 1

insert into customers_info (customers_info_id, customers_info_number_of_logons, customers_info_date_account_created) values ('24', '-1', now())

[TEP STOP]


pourtant les informations son bien dans la base de donnée et du coté administration de mon site je les vois aussi Smiley eek

j'ai chercher un peux et j'ai découvert que ce pourrais être un probleme d'auto-incrément, le truc c'est que je ne sais pas trop quoi faire pour résoudre le probleme!

de plus j'ai un peux modifier la requête qui m'était donnée en traduisant de l'anglais au français et en enlevant les date et heure inexacte dans la requête qui à mon avis ne servais à rien!

je vous donne la requête originale et celle que j'ai exécuter:

originale:

ALTER TABLE `customers` ADD `guest_flag` CHAR( 1 ) NULL DEFAULT '0';
INSERT INTO configuration_group VALUES (40, 'Guests', 'Guests settings', 40, 1);
INSERT INTO configuration VALUES ('', 'Guests accounts', 'GUEST_ON', 'true', 'Allow Customers to purchase without an account', 40, 1, '2003-09-09 13:07:44', '2003-09-09 12:10:51', NULL, 'tep_cfg_select_option(array(\'true\', \'false\'),');


modifier:

ALTER TABLE `customers` ADD `guest_flag` CHAR( 1 ) NULL DEFAULT '0';
INSERT INTO configuration_group VALUES (40, 'Invités', 'Paramètres Invités', 40, 1);
INSERT INTO configuration VALUES ('', 'Compte Invités', 'GUEST_ON', 'true', 'Autoriser l"achat sans compte aux Clients visiteur', 40, 1,  NULL, NOW(), NULL, 'tep_cfg_select_option(array(\'true\', \'false\'),');


et à chaque fois que je fais le test j'ai le même message d'erreur sauf que le premier chiffre augmente, c'est à dire que de 24 il passe à 25 et ainsi de suite !

tout en étant bien rentrer quand même dans la base de donnée et l'admin du site !


voilà si vous avez une idée ce serais super!

merci
tu peux verifier dans ta base avec phpmyadmin que la table customers_info ton customers_info_id est en auto-incrementation.

c'est dans le champs extra qu'on peut voir dans le menu deroulant d'un champ si c'est activé.

Ensuite il faut bien connaitre oscommerce pour savoir comment ça fonctionne.tu devrais demander sur les forums d'os commerce.

a priori ici les requetes indiques les id où il faut ecrire...
ce qui est une belle bétise si l'auto-incremente est activer. dans ce cas il faut faire des insert sans l'info customers_info_id et le 24. oscommerce doit donc fonctionner sans auto-increment.

et en même temps si tu n'as pas d'auto-increment visiblement le compte des id est mal fait.

je peux pas te dire que faire.

ta traduction de la requete semble juste mais si les scripts recherche des noms en anglais comme Guests dans le programme tu risque evidemment des problémes.
Hello,

Bel et bien problème de auto-increment, OsCommerce cherche à mettre à jour les infos de l'utilisateur (nombre de connection, date, etc) alors que cet utilisateur n'existe pas.

De plus, quelle est ta version de MySQL et est-ce que ton champ date peut accepter une valeur null ? Peut-être que non et dans ce cas ta requete n'est pas executée