Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
$sql = "INSERT INTO dinTabel (pn_uname, pn_email) VALUES ('" . $oplysning[0] . "', '" . $oplysning[1] . "')"; echo $sql . "<br>"; // Bare med for at du kan følge med under vejs. mysql_query($sql) or die(mysql_error()); }
Så skal du først og fremmest sætte dit pn_uid-felt til at være af en taltype; Lige nu ser den ud til at kunne indeholde tekst. Når du har gjort dette skulle du under Extra kunne finde auto_increment.
OBS #1: Jeg kan se (06/12-2005 23:45:35) at du har denne INSERT-linje:
INSERT INTO nuke_users (pn_uname, pn_email) VALUES ('pn_uid', 'pn_name')
Den skyldes nok at du har en tilsvarende linje i din CSV-fil. Den skal du lige have slettet derfra - for den skal jo ikke med over i tabellen i databasen.
OBS #2: Resten af dine SQL'er ser sådan ud:
INSERT INTO nuke_users (pn_uname, pn_email) VALUES ('', 'Rikke') INSERT INTO nuke_users (pn_uname, pn_email) VALUES ('', 'Nichlas Campbell')
- og for mig ser det ud til at du dermed får sat dine navne ind i pn_email-feltet. Mon ikke at de skulle ind på pn_uname i stedet?
Umiddelbart vil jeg gætte på at det skyldes at du har tre 3 søjler i dit Excel-ark;
pn_uid, pn_uname, og pn_email
Den første af disse søjler ser dog ud til at være helt tom - den indeholder vist kun overskriften 'pn_uid'. Korrekt?
Hvis det er korrekt, kan du nu gøre to ting:
Mulighed 1) Slet denne søjle i dit Excel-ark. Dette er helt klart den simple løsning, og den vil ikke kræve at du ændre i PHP-koden.
... eller:
Mulighed 2) Behold denne søjle i dit Excel-ark. Imidlertid skal du så rette i PHP scriptet. Det er dog kun en linje som skal rettes; Ret:
Du kan ikke have UNIQUE på dit pn_uname-felt. I hvert fald ser det ud til at du rent faktisk allerede har dublettet i dit Excel-regneark, og at det er derfor det går galt. :^|
Jeg var nu mere intereseret i den INSERT som blev skrevet ud på *skærmen* - altså lige før at fejlmeddelesen kommer.
Næeh excel filen er der ikke noget, der sker jo feks ikke noget ved det når jeg har en 100% blank nuke_users database, så kan den ligge alle ind. Åh undskylder meget for alt det besvær jeg volder... Men håber der er en løsnnig.. Tager lidt lang tid at ligge lidt op af gangen, slette de entries der er dobbelt manualt, og oploade scriptet igen og reload... Men sådan kan det gøres
Hvis du sætter pn_uname-feltet til at være UNIQUE, så kan der ikke være dubletter i det felt. Derfor kan du heller ikke indsætte noget som allerede er der en gang. Hvis du har sådan et tilfælde så bliver du nødt til at finde ud af hvad der så skal ske i stedet.
Yes. Håbede på man kunne sætte den til at springe over de steder hvor man fandt dupletter. Det var det jeg prøvede med WHERE pn_email NOT = " . $oplysning[1] . "')";
$sql = "SELECT count(*) AS antal FROM nuke_users WHERE pn_uname = '" . $pn_uname . "'"; $query = mysql_query($sql) or die(mysql_error()); $row = mysql_fetch_assoc($query);
Navnet i dette tilfælde er jo en "unik" mail, dem ligger der også rigtig mange af i forvejen der har deres username som mail... Derfor hvis man fra sorterer dupletter, vil man sørge for at der ikke kommer 2 konti til samme mail adresse, tager jeg helt fejl?
De data der findes i excel filen stammer fra en ekstern konkurrence hvor folk har afkrydset de gerne vil modtage nyhedsbrev fra min side. Problemet er at mange af dem der har deltaget allerede er tilmeldt via min side. Og så render vi ind i dupletter. Jeg tester lige det hele local før jeg sparker noget ud live... Melder tilbage :)
Den kørte bare alle igennem der ikke var der, så vidt jeg kunne se. Så må vi jo se om brugerne brokker sig. Hvad skulle addes hvis den skulle dobbelt tjekke a A, det skønt at lærer måske kan jeg hjælpe andre på et tidspunkt ;)
Kan du ikke smide et svar så du får points i det mindste
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.