Aller au contenu

[Résolu]Formulaire de recherche


Messages recommandés

Et bien voila, ca fonctionne ! :byebye:

J'ai une toute petite question pour finir, comment ajouter d'autres entrées dans la bdd?

INSERT INTO search (name, num, num2) VALUES ('le name', 'le num', 'le num2'); a très bien fonctionné pour la première entrée, mais lorsque je veux en ajouter d'autres, j'ai ce message : #1062 - Duplicate entry '0' for key 1

Comment y remédier?

EDIT : et comment avoir un affichage normal à la place de Numéro de téléphone?

Lien vers le commentaire
Partager sur d’autres sites

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

C'est à cause de ton champ 'ID' dans ta base. Si tu l'as mis en auto-increment à la création de ta table, ta requête doit être comme ça :

INSERT INTO search (name, num, num2) VALUES ('', 'le name', 'le num', 'le num2');

Si ton champ n'est pas en auto-increment, soit tu gère à la main l'id, soit tu passes le champ en auto-increment.

Lien vers le commentaire
Partager sur d’autres sites

oui, mais si il t'envoit balader quand tu ne renseigne pas le champ et donc s'il n'incremente pas seul, c'est qu'a la creation, on a du oublier le auto-increment

un ALTER TABLE nomdetable MODIFY nomdecolonne NOT NULL AUTO_INCREMENT (ou quelque chose de ressemblant) devrait faire l'affaire

Lien vers le commentaire
Partager sur d’autres sites

@ Dark Sephiroth : lorsque j'essaye comme tu as dis, j'obtiens une erreur ...

@ Mephisto : étant donné que ma base ne contient encore aucune donnée, mise a part 'Test', peut etre qu'il serait plus simple de créer une nouvelle table tout bien comme il faut.

A l'aide de la doc mysql, j'ai fais ca, qu'en pensez vous?

CREATE TABLE search (

id MEDIUMINT NOT NULL AUTO_INCREMENT,

name VARCHAR(50),

num VARCHAR(50),

num2 VARCHAR(50),

PRIMARY KEY (id)

);

Et ca pour la remplir :

INSERT INTO search (name, num, num2) VALUES ('name_1', 'le num_1', 'le num2_1'), ('name_2', 'le num_2', 'le num2_2');

Lien vers le commentaire
Partager sur d’autres sites

exact, mais au final, fais comme tu veux

un MEDIUMINT, c'est plus de 16 millions de possibilitees (enfin, 8 puisque tu utilise que les valeures positives), un INT, c'est 4 milliards

et pour eviter de perdre la moitie, passe les en UNSIGNED

de toute facon, meme en revolutionnant le monde de l'annuaire en ligne avec ton script PHP, je doute que tu atteigne les 8 millions d'entrees avant un moment :roll:

pour plus d'infos:

http://dev.mysql.com/doc/refman/5.1/en/num...e-overview.html

Lien vers le commentaire
Partager sur d’autres sites

de toute facon, meme en revolutionnant le monde de l'annuaire en ligne avec ton script PHP, je doute que tu atteigne les 8 millions d'entrees avant un moment langue.gif

Ca c'est sûr !! ;)

Pour le moment, à vue de nez je dois avoir entre 500 et 800 entrées.

Justement en parlant de ca, y a pas un moyen plus rapide que de me taper toutes ces entrées à la main? :roll:

Sinon, les résultats affichés dans le tableau ont un problème avec les accents :

Numéro de téléphone

Est ce que ca fera pareil avec les données dans la base sql? Parce que j'ai des noms avec accents ...

Lien vers le commentaire
Partager sur d’autres sites

et si tu les mets en é, è etc.... ça marche pas?

Pour remédier à l'affichage du texte avec accent contenu dans la page oui, mais ca va toujours poser problème pour les noms accentués de la base sql ...

une solution radicale serait de ne pas utiliser d'accents

Et dans ce cas, ca ne poserais pas de problème pour la recherche?

Si le nom recherché contient un accent et que celui de la bdd n'en contient pas, il sera quand même trouvé par la recherche?

@ LukeSkyPator et theocrite :

La prochaine fois que j'aurais besoin, j'essayerais LAMP ... :chinois:

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.


×
×
  • Créer...