Ses derniers messages sur les forums
Soit tu affiches quelque chose avant de démarrer tes sessions donc php te jète soit tu as un espace qui traine quelque pas avant ton session_start.
Une astuce : Dans un fichier en php pur, la balise fermente ?> n'est pas obligatoire. ça évite même pas mal de problème d'espace oubliés.
Normal tu n'as pas 3 lettres r à mysql_error()
le 18/05/2010 à 10:34
php
En utilisant tes yeux pour lire. Tes mains pour taper les mots clés sur les moteurs de recherche et ton cerveau pour trouver les bons mots clés.
Que répondre à une question comme ça?!
Pour retirer l'auto-incremente tu fais comme je t'ai expliqué plus haut dans un autre post mais cette fois tu décoches la case.
Et pour la clé primaire en bas de ta table (toujours sous wamp et sous l'onglet structure) tu dois avoir une ligne avec marqué PRIMARY, tu coches sur la croix pour supprimer cette ligne
Donc ça sert à faire un dump de ton forum? C'est une drole de méthode. Tu n'as pas accès à ta base de données directement?
Tu vas essayer dans l'autre sens. Retires l'auto-encremente et la clé primaire.
L'auteur à coté le script avec les pieds... :/
Normalement $Messages[2][$i] doit avoir une valeur unique or là cela n'est pas le cas.
J'ai un peu de mal à comprendre sa logique. Il sert à quoi se script?
J'avais pas vu un de tes posts ton champ est bien en auto-incremente donc fais juste la modif de la ligne php dans le script.
Si ça marche pas fais
print_r($Messages);
et donnes nous le résultat.
C'était un exemple comme je n'avais rien pour écrire ta requête.
$Messages[2][$i] correspond à quoi dans ton tableau? Parce que là le problème (selon moi) c'est que si t'as 2 fois la même chose, le script va te jeter à tout les coups.
Si $Messages[2][$i] représente un identifiant unique que tu détermines par php, c'est une mauvais idée car les risques de doublons sont possible.
Fais un test en remplaçant la ligne par ça.
Et place le champ en auto-encremente
$sql = "INSERT INTO forumactif_posts VALUES(NULL , '', '" . $topics['id'] . "', '" . $timestamp . "', '" . $Auteur . "')";
Coté MySQL
Tu te connectes à ton phpMyAdmin avec wamp.
Tu cliques sur ta base (je ne connais pas le nom de celle-ci)
Tu vas voir la liste de tes tables.
Tu cliques sur la table forumactif_posts puis sur structure (en haut dans les onglets)
Là tu regardes dans extra si ton champ est en "auto_increment" si c'est le cas tu ne fais rien, sinon tu cliques sur modifier(le crayon sur la ligne que tu souhaites modifier) et tu coches la case "auto_increment"
Maintenant coté PHP
Sur ta requête MySQl tu changes comme ça :
INSERT INTO forumactif_posts VALUES(NULL, '', '90', '1263767640', 'charlotte')
Tu places NULL pour valeur et normalement ça doit fonctionner.
Erreur: Duplicata du champ '996' pour la clef 'PRIMARY'
En clair, tu ne peux pas dupliquer une clé primaire.
Une clé primaire à une valeur et cette valeur est unique.
Ton champ doit être en auto incrémente et ne précise pas l'identifiant dans ta requête
INSERT INTO forumactif_posts VALUES('', '', '90', '1263767640', 'charlotte')"