Misschien die typo hier:quote:Op woensdag 13 augustus 2014 17:33 schreef superky het volgende:
Hoi ik heb een vraagje over een tutorial die ik ging volgen waarbij er de php mail() functie werd gebruikt. Hier is de link van de tutorial:
De php mail() functie werkt wel, omdat hij true als waarde terug geeft. Maar ik ontvang geen email als ik een account registreer. Dit had ik dus getest met de volgende stukje code:
[ code verwijderd ]
Maar ik weet nog steeds niet hoe ik dit probleem kan fixen. Kan iemand me misschien helpen?
Hier is de rest van mijn code die ik gebruik:
[ code verwijderd ]
Ook vind ik het geen probleem als iemand me wilt helpen via Skype. Omdat ik dat ook waardeer .
1 2 3 4 5 | <?php 'From: webmaster@example.com' . "\r\n" . 'Reply-To: webmaster@example.com' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); ?> |
Dat komt niet door mij dat komt door de website hehe . Zie hier een screenshot van mijn tekst editor:quote:Op woensdag 13 augustus 2014 19:54 schreef Juicyhil het volgende:
[..]
Misschien die typo hier:
$headers = "From: $fromn";
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 | // END FORM DATA ERROR HANDLING // Begin Insertion of data into the database // Hash the password and apply your own mysterious unique salt $cryptpass = crypt($p); //<-- dit wordt een 30 bit/characters cryptic hash include_once ("php_includes/randStrGen.php"); $p_hash = randStrGen(20)."$cryptpass".randStrGen(20); // Add user info into the database table for the main site table $sql = "INSERT INTO users (username, email, password, gender, country, ip, signup, lastlogin, notescheck) VALUES('$u','$e','$p_hash','$g','$c','$ip',now(),now(),now())"; $query = mysqli_query($db_conx, $sql); //<-- Dit runt de query $uid = mysqli_insert_id($db_conx); // Establish their row in the useroptions table $sql = "INSERT INTO useroptions (id, username, background) VALUES ('$uid','$u','original')"; $query = mysqli_query($db_conx, $sql); // Create directory(folder) to hold each user's files(pics, MP3s, etc.) if (!file_exists("user/$u")) { //Als de folder met de naam van de user niet bestaat, dan maken we die folder aan. mkdir("user/$u", 0755); //0755 zijn de folder permissies oftewel chmod } // Email the user their activation link $to = "$e"; $from = "auto_responder@yomacho.host56.com"; /*als je een email gebruikt die ook op de server(van je host (=yomacho.host56.com)) draait *en waar je website ook draait. Dan ontvangt de user een email in zijn inbox en niet in zijn junkbox. */ $subject = 'Facebook Clone Account Activation'; $message = '<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Facebook Clone Message</title></head><body style="margin:0px; font-family:Tahoma, Geneva, sans-serif;"><div style="padding:10px; background:#333; font-size:24px; color:#CCC;"> <a href="http://www.yoursitename.com"><img data-src="http://www.yoursitename.com/images/logo.png" style="visibility:hidden;" width="36" height="30" alt="Facebook Clone" style="border:none; float:left;"></a>yoursitename Account Activation</div><div style="padding:24px; font-size:17px;">Hello '.$u.',<br /><br /> Click the link below to activate your account when ready:<br /><br /><a href="http://http://yomacho.host56.com/activation.php?id='.$uid.'&u='.$u.'&e='. $e.'&p='.$p_hash.'">Click here to activate your account now</a><br /><br />Login after successful activation using your:<br />* E-mail Address: <b>'.$e.'</b></div></body></html>'; // Geef GELDIGE adressen op // Een korte benaming voor jouw website $website_naam = 'Facebook clone'; // Jouw eigen geldige emailadres $eigen_emailadres = 'auto_responder@yomacho.host56.com'; // Een geldig emailadres voor errors $error_emailadres = 'superkytoz@gmail.com'; // De naam van de verzender $naam_verzender = 'superky'; // Het geldige emailadres van de afzender $email_verzender = 'glimer_flash@hotmail.com'; // Een geldig emailadres of helemaal leeg laten $bcc_emailadres = ''; // HTML mail? True/False $html = true; // De headers samenstellen $headers = 'From: ' . $website_naam . ' <' . $eigen_emailadres . '>' . "\r\n"; $headers .= 'Reply-To: ' . $naam_verzender . ' <' . $email_verzender . '>' . "\r\n"; $headers .= 'Return-Path: Mail-Error <' . $error_emailadres . '>' . "\r\n"; $headers .= ($bcc_emailadres != '') ? 'Bcc: ' . $bcc_emailadres . "\r\n" : ''; $headers .= 'X-Mailer: PHP/' . phpversion() . "\r\n"; $headers .= 'X-Priority: Normal' . "\r\n"; $headers .= ($html) ? 'MIME-Version: 1.0' . "\r\n" : ''; $headers .= ($html) ? 'Content-type: text/html; charset=iso-8859-1' . "\r\n" : ''; //$headers = "From: $from\n"; //$headers .= "MIME-Version: 1.0\n"; //$headers .= "Content-type: text/html; charset=iso-8859-1\n"; //mail($to, $subject, $message, $headers); if(mail($to, $subject, $message, $headers)){ echo "Email has been sent to<b> ".$to."</b>"; } else{ echo "Failed sending message to <b> ".$to."</b>."; } echo "signup_success"; exit(); [\code] |
Inderdaad, gewoon zelf iets maken.quote:Op woensdag 13 augustus 2014 21:51 schreef Faux. het volgende:
ik zou al die code gewoon dumpen eigenlijk
quote:Op woensdag 13 augustus 2014 22:37 schreef slacker_nl het volgende:
Waarom zelf wat bedenken?http://swiftmailer.org/docs/messages.html
Het is wel handig om te weten hoe het op basis niveau werkt.quote:Op woensdag 13 augustus 2014 22:37 schreef slacker_nl het volgende:
Waarom zelf wat bedenken?http://swiftmailer.org/docs/messages.html
1 2 | $headers .= "Return-Path: <adminemail@yahoo.com>"."\n"; $headers .= "From: adminemail@yahoo.com <adminemail@yahoo.com>" . "\n"; |
Dingen hergebruiken, dat is uiteraard niet goed als developer.quote:Op donderdag 14 augustus 2014 00:02 schreef totalvamp het volgende:
[..]
Het is wel handig om te weten hoe het op basis niveau werkt.
Alles laten voorkauwen is niet goed als je nog een beginner bent.
Werk je op een lokale server? Je moet wel een mailserver (Tomcat) hebben en die (goed) instellenquote:Op woensdag 13 augustus 2014 17:33 schreef superky het volgende:
Hoi ik heb een vraagje over een tutorial die ik ging volgen waarbij er de php mail() functie werd gebruikt. Hier is de link van de tutorial:
De php mail() functie werkt wel, omdat hij true als waarde terug geeft. Maar ik ontvang geen email als ik een account registreer. Dit had ik dus getest met de volgende stukje code:
[ code verwijderd ]
Maar ik weet nog steeds niet hoe ik dit probleem kan fixen. Kan iemand me misschien helpen?
Hier is de rest van mijn code die ik gebruik:
[ code verwijderd ]
Ook vind ik het geen probleem als iemand me wilt helpen via Skype. Omdat ik dat ook waardeer .
Nee ik heb hem op een host staan bij 000webhost. Maar als er geen oplossing dan kan ik het beter laten. Ik ben nu toch die code aan het veranderen.quote:Op donderdag 14 augustus 2014 12:11 schreef remi1986 het volgende:
[..]
Werk je op een lokale server? Je moet wel een mailserver (Tomcat) hebben en die (goed) instellen
Verder misschien een spamfilter ofzo? Je knalt ook de hele phpversion() in de headers. Lijkt me een beetje overbodig.
Swiftmailer was al gegeven. PHPMailer is ook nog een alternatief. Bespaart je een hoop ellendequote:Op donderdag 14 augustus 2014 14:39 schreef superky het volgende:
[..]
Nee ik heb hem op een host staan bij 000webhost. Maar als er geen oplossing dan kan ik het beter laten. Ik ben nu toch die code aan het veranderen.
Tomcat? Apache tomcat bedoel je, das geen mailer. Verder wil je helemaal niet echt mailen in je tests. En als je dat doet wil je dat postfix oid je mail lokaal afvangt.quote:Op donderdag 14 augustus 2014 12:11 schreef remi1986 het volgende:
[..]
Werk je op een lokale server? Je moet wel een mailserver (Tomcat) hebben en die (goed) instellen
Verder misschien een spamfilter ofzo? Je knalt ook de hele phpversion() in de headers. Lijkt me een beetje overbodig.
Postfix ja klopt.quote:Op donderdag 14 augustus 2014 17:22 schreef slacker_nl het volgende:
[..]
Tomcat? Apache tomcat bedoel je, das geen mailer. Verder wil je helemaal niet echt mailen in je tests. En als je dat doet wil je dat postfix oid je mail lokaal afvangt.
Je gaat in je unit test niet echt mailen. Je integratietests zullen dat wel doen, maar in principe zal je in je testfiles gewoon een $mailer->send() uitvoeren en je wilt weten dat dat aangeroepen wordt, in je testfile zal je dan zelf een $mailer object hebben met dezelfde API en dan kan je daarna dingen doen als:quote:Op donderdag 14 augustus 2014 17:35 schreef remi1986 het volgende:
Postfix ja klopt.
Naja of je iets wel of niet wil ga ik niet op in. Ik test iets liever een keer extra.
1 2 3 4 5 6 7 8 9 10 11 12 | my $mailer = Mocked::Mailer->new(); { local *Mocked::Mailer::send = sub { return 1 }; my $class = My::Class->new(mailer => $mailer); $class->do_mail_please(); } { local *Mocked::Mailer::send = sub { die "I failed to send a mail" }; my $class = My::Class->new(mailer => $mailer); dies_ok(sub { $class->do_mail_please(); }, qr/I failed to send a mail/, "Our mailer has died a horrible death"); } |
Oke, maar zo zei je dat niet.quote:Op donderdag 14 augustus 2014 17:43 schreef slacker_nl het volgende:
[..]
Je gaat in je unit test niet echt mailen. Je integratietests zullen dat wel doen, maar in principe zal je in je testfiles gewoon een $mailer->send() uitvoeren en je wilt weten dat dat aangeroepen wordt, in je testfile zal je dan zelf een $mailer object hebben met dezelfde API en dan kan je daarna dingen doen als:
[ code verwijderd ]
Dat wil je weten, niet of je mailer wel werkt. Als je postfix verkeerd geconfigureerd is en je mail komt niet aan dan weet je nog niet of het aan je code ligt of aan je postfix. Das een andere test.
De fout zit altijd in je code, waar in je code is de vraag..quote:Op donderdag 14 augustus 2014 17:56 schreef remi1986 het volgende:
[..]
Oke, maar zo zei je dat niet.
En tevens heb je toch zo door of de fout in de code zit of niet. Kwestie van beetje kunnen debuggen.
prima, ga die discussie niet eens voerenquote:Op donderdag 14 augustus 2014 18:11 schreef slacker_nl het volgende:
[..]
De fout zit altijd in je code, waar in je code is de vraag..
Headers moet je scheiden met \r\n, niet alleen \n (volgens de mailspecs). Verder is html mail lastiger dan plain text mail en zijn lange regels ook een mogelijk probleem. Dus in plaats van een kilometer aan html zou ik eerst eens een gewone korte regel als plain text versturen (en dus ook geen html headers). Als dat goed werkt, kun je stap voor stap verder gaan met complexere dingen proberen.quote:Op woensdag 13 augustus 2014 20:03 schreef superky het volgende:
Verder heb ik de headers ook aangepast maar alsnog krijg ik geen mailtje binnen . Zie hier de aanpassing:
[ code verwijderd ]
quote:Op donderdag 14 augustus 2014 19:14 schreef cablegunmaster het volgende:
Iemand ervaring met codeigniter?
Korte vraag ik zat met een opvraging vraag, sql en alles hoe voer ik het in ? Daar bedoel ik mee met de complexe sql query's want je zit met een query schrijver? ( Inner joins ) en limits, waar de documentatie hierover te vinden is.quote:
Dit? https://ellislab.com/code(...)e/active_record.htmlquote:Op donderdag 14 augustus 2014 20:13 schreef cablegunmaster het volgende:
[..]
Korte vraag ik zat met een opvraging vraag, sql en alles hoe voer ik het in ? Daar bedoel ik mee met de complexe sql query's want je zit met een query schrijver? ( Inner joins ) en limits, waar de documentatie hierover te vinden is.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | <?php // Make sure an ID was passed if(isset($_GET['id'])) { // Get the ID $id = intval($_GET['id']); // Make sure the ID is in fact a valid ID if($id <= 0) { die('The ID is invalid!'); } else { // Connect to the database $dbLink = new mysqli('127.0.0.1', '', '', ''); if(mysqli_connect_errno()) { die("MySQL connection failed: ". mysqli_connect_error()); } // Fetch the file information $query = " SELECT `mime`, `name`, `size`, `data` FROM `filejtc` WHERE `id` = {$id}"; $result = $dbLink->query($query); if($result) { // Make sure the result is valid if($result->num_rows == 1) { // Get the row $row = mysqli_fetch_assoc($result); //print headers header("Content-Type: ". $row['mime']); header("Content-Length: ". $row['size']); header("Content-Disposition: attachment; filename=". $row['name']); // Print data echo $row['data']; } else { echo 'Error! No image exists with that ID.'; } // Free the mysqli resources @mysqli_free_result($result); } else { echo "Error! Query failed: <pre>{$dbLink->error}</pre>"; } @mysqli_close($dbLink); } } else { echo 'Error! No ID was passed.'; } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | <?php // Connect to the database $dbLink = new mysqli('127.0.0.1', '', '', ''); if(mysqli_connect_errno()) { die("MySQL connection failed: ". mysqli_connect_error()); } // Query for a list of all existing files $sql = 'SELECT `id`, `name`, `mime`, `size`, `created` FROM `filejtc`'; $result = $dbLink->query($sql); // Check if it was successfull if($result) { // Make sure there are some files in there if($result->num_rows == 0) { echo '<p>Er zitten nog geen bestanden in de database!</p>'; } else { // Print the top of a table echo '<table width="100%"> <tr> <td><b>Naam:</b></td> <td><b>Soort bestand:</b></td> <td><b>Grootte (bytes)</b></td> <td><b>Aangemaakt</b></td> <td><b> </b></td> </tr>'; // Print each file while($row = $result->fetch_assoc()) { echo " <tr> <td>{$row['name']}</td> <td>{$row['mime']}</td> <td>{$row['size']}</td> <td>{$row['created']}</td> <td><a href='get_file.php?id={$row['id']}'>Download</a></td> </tr>"; } // Close table echo '</table>'; } // Free the result $result->free(); } else { echo 'Error! SQL query failed:'; echo "<pre>{$dbLink->error}</pre>"; } // Close the mysql connection $dbLink->close(); ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | <?php // Check if a file has been uploaded if(isset($_FILES['uploaded_file'])) { // Make sure the file was sent without errors if($_FILES['uploaded_file']['error'] == 0) { // Connect to the database $dbLink = new mysqli('', '', '', ''); if(mysqli_connect_errno()) { die("MySQL connection failed: ". mysqli_connect_error()); } // Gather all required data $name = $dbLink->real_escape_string($_FILES['uploaded_file']['name']); $mime = $dbLink->real_escape_string($_FILES['uploaded_file']['type']); $data = $dbLink->real_escape_string(file_get_contents($_FILES ['uploaded_file']['tmp_name'])); $size = intval($_FILES['uploaded_file']['size']); // Create the SQL query $query = " INSERT INTO `filejtc` ( `name`, `mime`, `size`, `data`, `created` ) VALUES ( '{$name}', '{$mime}', {$size}, '{$data}', NOW() )"; // Execute the query $result = $dbLink->query($query); // Check if it was successfull if($result) { echo 'Succes! Het bestand is toegevoegt aan de database!'; } else { echo 'Error! Er is wat fout gegaan bij het invoegen aan de database! Probeer opnieuw!' . "<pre>{$dbLink->error}</pre>"; } } else { echo 'Er is wat fout gegaan tijdens het uploaden, probeer opnieuw! ' . 'Error code: '. intval($_FILES['uploaded_file']['error']); } // Close the mysql connection $dbLink->close(); } else { echo 'Error! Er is geen bestand geselecteerd!'; } // Echo a link back to the main page echo '<p>Klik <a href="../jtc/files.php">HIER</a> om verder te gaan!</p>'; ?> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |