hjelp_jeanette Skrevet 26. mars 2008 Del Skrevet 26. mars 2008 hei dere! jeg trenger rask hjelp, for jeg har ved en feil laget et script som bomber e-post kontoen "vår" med e-post...!!!! scriptet skal sende en e-mail til vår konto (liebig34...no-log.org) med info (for newsletter) når man skriver inn navn, sin egen e-mail og kommentar og klikker send. det funker når jeg bruker det, men en av testene jeg gjorde har på mystisk vis hengt seg opp, og blir sendt på nytt ca en gang i timen... og jeg aner ikke hvorfor! sånn ser scriptet ut: <BODY> <div id="Layer1" align="right" > <form id="form1" name="form1" method="post" action="e-maillist.php?process=yes"> <div align="right" style="height: 280px; width: 260px; position:absolute; background-color: #ffffff"> <p><span class="style3"> to join our e-maillist and receive our newsletter just enter...:<br><br> your name/nickname: <br><input type="text" name="name" tabindex="1" style= "width: 200px"/> <br /> your e-mail: <br><input type="text" name="email" tabindex="2" style= "width: 200px"/> <br /> any message??: <br><textarea name="message" tabindex="3" style= "height: 80px; width: 210px">i want to join your e-mail list! </textarea> <br /> <input type="submit" name="Submit" value="Send" tabindex="5" /> <br> </p> <?php if (isset($_GET[process])) { $name = $_POST[name]; $email = $_POST; $message = $_POST[message]; ## hvis ingen email adresse... if ($email == "") { print 'you forgot to write your own e-mail adress!'; ?> <?php } else{ $fornavn = explode(" ", $name); ?>thanks! you'll hear from us!! <?php ##echo $name." ".$email." \n".$message; mail("[email protected]", "join newsletter ".$name, $message, $email, "FROM:$email"); } } ?> </span> </div> </BODY> hmm... dette er bare rart.. kan noen hjelpe meg? hlsen jeanette Lenke til kommentar
Flin Skrevet 26. mars 2008 Del Skrevet 26. mars 2008 Er masse feil her, feil overalt, men jeg kan fiske på det hvis du vil. Lenke til kommentar
hjelp_jeanette Skrevet 26. mars 2008 Forfatter Del Skrevet 26. mars 2008 hehehe.. ja.. jeg veit det er masse feil, men det er jo rart, at det funker til vanlig, selv med feil (og halve koder, ting jeg har tatt bort og flytta på osv..), men kun denne ene gangen slår det skikkelig feil og når jeg bruker scriptet igjen nå går alt som det skal... ..jeg tenkte, kanskje var det en feil på serveren akkurat da jeg klikka "send"??? Lenke til kommentar
Flin Skrevet 26. mars 2008 Del Skrevet 26. mars 2008 Kanskje, men er fremdeles fryktelig dårlig kode. Har du kontroll over serveren? Kan jo reboote den, eller så kan du slette fila og laste den opp på nyt, det kan kanskje stoppe det. Lenke til kommentar
Mats Danielsen Skrevet 26. mars 2008 Del Skrevet 26. mars 2008 Kan du deffinere det du mener med dårlig kode? Lenke til kommentar
hjelp_jeanette Skrevet 26. mars 2008 Forfatter Del Skrevet 26. mars 2008 (endret) hmm, tja, det ser vel ikke så fint ut og er ikke så ryddig, men jeg har aldri påstått at jeg er noen php-mester, og ettersom det jo funker til slutt syns jeg ikke det er så farlig. dessuten har det ikke noe med det jeg lurte på å gjløre. --nei, jeg har ikke kontroll over serveren, jeg tenkte på at jeg kanskje skulle skrive en mail til han som har kontroll, og spørre om noe gikk galt 23mars kl 15:39, for det er da mailen som blir sendt om og om igjen stammer fra. hm edit: det hjalp forresten ikke å slette fila...! Endret 26. mars 2008 av hjelp_jeanette Lenke til kommentar
Ernie Skrevet 26. mars 2008 Del Skrevet 26. mars 2008 (endret) Det problemet der kan kort og godt ikke ligget i PHP. PHP har ingen form for kontinuerlig kjøring og vil derfor bare sende en mail pr. eksekvering. I mine øyne ligger problemet sannsynligvis på/i SMTP-serveren (programvaren som faktisk sender mailen) du sender fra (ev. serveren som mottar mailen). Det jeg tror skjer er at serveren som sender tror mailen ikke ble sendt eller mottar en status fra mottaker-server som tilsier at mailen ikke kom frem og/eller må sendes på nytt. Dette vil som oftest skje en god stund etterpå, og 1t er ikke utenkelig. Får man det samme problemet igjen får man effektivt en loop. Strengt tatt skal det aldri skjer siden SMTP-serveren egentlig skal gi opp etter x forsøk, men man veit jo aldri Forøvrig, har sett mye, mye verre kode enn der der og «feilene» i koden har absolutt ingenting med problemet du opplever. Endret 26. mars 2008 av Ernie Lenke til kommentar
hjelp_jeanette Skrevet 26. mars 2008 Forfatter Del Skrevet 26. mars 2008 takk, supert! ..da kunne vel egentlig denne tråden lukkes.. om jeg visste åssen man gjorde det,,,! god natt... Lenke til kommentar
Dryper Skrevet 27. mars 2008 Del Skrevet 27. mars 2008 ja hvordan stenger man eller redigerer den til løst har alt lurt på det jeg Lenke til kommentar
Flin Skrevet 27. mars 2008 Del Skrevet 27. mars 2008 Kan du deffinere det du mener med dårlig kode? Ja. Jeg begynner med $_POST variablene, her burde man vel strengt tatt brukt ' eller " $_POST[ape] kan føre til at du får denne: Notice: Use of undefined constant ape - assumed 'ape' $_POST['ape'] blir mest korrekt. Så har vi jo denne delen: if ($email == "") { print 'you forgot to write your own e-mail adress!'; ?> <?php } else{ $fornavn = explode(" ", $name); ?>thanks! you'll hear from us!! <?php ##echo $name." ".$email." \n".$message; mail("[email protected]", "join newsletter ".$name, $message, $email, "FROM:$email"); } } ?> Den burde vel i grunn se noe ut som dette: if ($email == "") { print 'you forgot to write your own e-mail adress!'; } else { $fornavn = explode(" ", $name); /*Jeg skjønner heller ikke hvorfor denne linjen er med, det virker jo ikke som om den har noe som den blir brukt vidre i koden.*/ echo "thanks! you'll hear from us!!"; ##echo $name." ".$email." \n".$message; mail("[email protected]", "join newsletter ".$name, $message, $email, "FROM:$email"); } ?> Og jeg trenge vel ikke å gå inn på validering av epost adresser og sikkerhet som dere vanligvis er flinke til å kritisere, men jeg skal si at i alle fall en strip_tags() burde legges til på det som kommer fra brukren. Lenke til kommentar
hjelp_jeanette Skrevet 27. mars 2008 Forfatter Del Skrevet 27. mars 2008 (endret) hei. ja, det var en gang meninga at man skulle få meldinga "thanks $fornavn, you'll hear from us soon", men så blei det bare teit så jeg droppa det. og: strip_tags?? hm, jeg har ikke peiling på hva det er. har det med sikkerhet å gjøre? trenger jeg sikkerhet? hmmm... hvis du er veldig hypp på å hjelpe meg med alle de små feilene mine kunne du gjerne forklart hva jeg har gjort feil i 'e-mail-oppsettet'. jeg ville nemlig at "from" skulle vises (i e-mailen vi får) som navnet brukeren skriver inn. men det gikk visst ikke helt. nå står det bare alfa3000 som sikkert er navnet på serveren. og forresten: vi får fremdeles en mail i timen...! edit: eller ja, from "e-mailen" da... Endret 27. mars 2008 av hjelp_jeanette Lenke til kommentar
Flin Skrevet 27. mars 2008 Del Skrevet 27. mars 2008 (endret) Tja hvofor ikke. mail("[email protected]", "join newsletter ".$name, $message, $email, "FROM:$email"); For det første så gir jo den FROM headren beskjed om at hvem det er fra skal vises som email-variablen. Og så gar du for mange parametere. mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )Fra php.net Sånn skal en mail-funksjon se ut. Så da blir skal det vel være sånn ca: mail("[email protected]", "join newsletter " . $name, $message, "FROM:{$name}"); Av ren nyskerighet, hva slaks side er det du lager? Endret 27. mars 2008 av Hjelpphp Lenke til kommentar
hjelp_jeanette Skrevet 28. mars 2008 Forfatter Del Skrevet 28. mars 2008 takktakk nå blir det orden i sakene ja! for din nysgjerrighet, her er siden: squat.net/liebig34 Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå