php og mysql: tilmeldingsliste med emailbekræftelse og online liste

Tags:    php

jeg forsøger at lave en tilmeldingsliste til min hygge-hjemmeside, hvor man får en mail når man har tilmeldt sig. og så man kan se de andre som har tilmeldt sig...
syntes jeg er nået ret langt, og har fat i den rigtige ende, men kan ikke rigtig hitte ud af resten..
er der nogen venlige sjæle der kan hjælpe ?

der er sikkert også blevet puttet for meget unødvendigt materiale ind, ...man kan såå at sige, at jeg har prøvet mig frem på må og få

oveni hatten er jeg helt ny her på sitet så jeg må be om forladelse hvis jeg gør noget forkert...

jeg vil blive rigtig glad hvis der er en der kan omskrive det for mig eller hjælpe med at sige hvad jeg gør forkert. for jeg er fuldstændig kommet på herrens mark !?

mit domæne er inde på one.com

jeg kan få mailsystemet til at virke!! juhuu!! men jeg kan ikke få vist andet end $email i bunden af scriptet...
vil gerne have det så brugeren kan se de tilmeldtes navne, tlf og noter..
og så et andet php-script hvor admin kan se det hele...

mysql ser sådan her ud:
Fold kodeboks ind/udKode 


settings.php:
Fold kodeboks ind/udKode 


index.php eller maillist.php:
Fold kodeboks ind/udKode 


maillistengine.php:
Fold kodeboks ind/udKode 


mysqlhandler.php:
Fold kodeboks ind/udKode 



hov!! den her maillist.php virker...
havde vidst pillet for meget ;-)

Fold kodeboks ind/udKode 


jeg ville blive rigtig glad hvis der er nogen der vil kikke på det, eller skal der nogle gryn på bordet før det har interesse ?



Indlæg senest redigeret d. 03.09.2009 21:11 af Bruger #15267
6 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
Ja nu er det så mig som er lidt sløv til at få læst besvarelser. Sorry... Ved ikke om du har fået svar på dit spørgsmål..

Den eneste grund jeg lige umiddelbart kan se er at har defineret email og navn som "unique". Det vil så sige at hvis prøver at indsætte et navn eller email som allerede findes i din tabel, vil den melde "Dublicate-fejlen". Det betyder så også at hvis du har et tomt felt under navn, og indsætter et nyt tomt felt, vil den også melde denne fejl. Så min konklusion er at du skal prøve at fjerne "unique" på "navn". Der er sikkert mange som hedder Peter som gerne vil på din mailliste ;)





:O :bounce: :)

det burde faktisk være ligetil for den lettere øvede... det går bare lidt ud over min forstand...

pleeease help!!



Indlæg senest redigeret d. 03.09.2009 21:13 af Bruger #15267
Det burde egentlig være ligetil...

Det du skal gøre for at få listet alle tilmeldte brugere er at hente det ud af din tabel og bruge en while løkke.

På samme måde gør du det for administrator.

Eksempel:

$query = "SELECT * FROM din_tabel";
$result = mysql_query($query);

while ($data = mysql_fetch_array($result)) {
print '{$data['navn']} {$data['email']} ';

}

osv.... :)

Håber det var det du søgte...



hej Lasse

Mange tak for dit svar!!
havde desværre overset at der blev svaret på mit indlæg.. så det er derfor jeg har været tavs...
ska prøve at være mere vågen fremover..

while-løkken har jeg allerede og det fungere når jeg bare indtaster en email..
det er mere det at få navn, tlf og noter ind i databasen.
din måde er kun lavet en smule anderledes og jeg kender ikke forskellen, bortset fra at det virker hvis man skifter:
print '{$data['navn']} {$data['email']} ';
til:
print "{$data['navn']} {$data['email']} ";
kun en detalje hvis man er nybegynder som jeg selv... ehee..


den siger følgende:
MySQL-fejl: Kunne ikke udfører: »INSERT INTO tilmelding (email,navn,tlf,creation) VALUES ('test@email.dk','','',NOW())«.
Fejlen er: Duplicate entry '' for key 2.

min nuværende konklusion er at jeg mangler at skrive nogle tilføjelser i maillistengine.php omkring linie 38
håbede man kunne samle alle værdierne under et snuptag i INSERT INTO...
men det vil den åbenbart ikke...

er det nogle forslag til det !?

endnu engang tak Lasse, for dit indput



Grunden til din MySQL fejl er at du har et PRIMARY KEY som du tilsyneladende ikke har sat til "auto increasement". Det betyder at den prøver at indsætte en ny række med samme id, hvilket ikke kan lade sig gøre - og melder derfor fejl.



hej Lasse!

jeg er ikke en ørn til MYSQL, men efter din kommentar legede jeg lidt med datatypen VARCHAR
...Min ID stod på "auto.." så den sku være go nok tror jeg...
Alle de andre stod på VARCHAR(255).

Der var derimod samme resultat som før.

Tabelrækken er arrangeret efter: id

se her:
Fold kodeboks ind/udKode 



og min index som jeg er mest i tvivl da jeg syntes den står lidt underligt i forhold til mine andre tabeller er:

Fold kodeboks ind/udKode 


Håber ovenstående kan give dig noget mere til din overvejelse...
Endnu engang tak for din hjælp...

Stefan



t