Bueno, el eterno problema...
Tengo una aplicaión en Flash + PHP y funciona perfectamente en un servidor con php4.
La llevo a otro Server con PHP5 y deja de funcionar.
Les paso el código a ver si me pueden decir que variables tengo que cambiar para que PHP5 me lo haga funcionar.
Consta de 3 archivos .php que paso a continuación
configure.php
[CODE<?php
// |||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||
// Set the user name for the newletter editor
$admin_username = "myusername";
// Set the password for the newletter editor
$admin_password = "mypassword";
// |||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||
// Name of the datafile, set file permissions to 666 or 777
$file_location = "subscribers.txt";
// Your email
$your_email = "[email protected]";
// Pattern for filtering out own emails
$pattern = "yoursite.com";
// Select the type of mail to send. false for text emails, true for html emails.
$html_email = false;
// |||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||
// Sorry message for failed subscription
$sorry_subscribe_message = "Sorry, but there is already an entry for $email";
// Sorry message for blank email
$sorry_blankmail_message = "Sorry, but you will have to enter an email address.";
// Sorry message for invalid emails
$sorry_oddmail_message = "Sorry, but \"$email\" does not look like an email to me.";
// Sorry message if someone entered your own mail
$sorry_ownmail_message = "Sorry, but I don't really want to get my own newsletter!";
// Subscribe message, will be shown when someone subscribes
$subscribe_message = "Thank you for subscribing to my newsletter, a confirmation email is on its way!";
// Unsubscribe message for deletion
$unsubscribe_message = "$email was deleted. You will not recieve any more newsletters.";
// Unsubscribe message for failed deletion
$failed_unsubscribe_message = "Sorry, you cannot unsubscribe as I didn't find an entry for $email";
// |||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||
// Title of the newsletter, will be displayed in the FROM field of the mail client
$mail_from = "Yoursite Newsletter";
// Subscribe mail, the email subject that will be sent when someone subscribes
$subscribe_mail_subject = "Thank you for subscribing.";
// Subscribe mail, the message that will be sent when someone subscribes
$subscribe_mail_body = "Thank you for subscribing to my newsletter.\nYou can unsubscribe at any time by returning to http://www.yoursite.com/newsletter/.";
// Newsletter mail header, this message will be attached to the top of the newsletter
$newsletter_premail = "Hello!\n\n";
// Newsletter mail footer, this message will be attached to the bottom of the newsletter
$newsletter_postmail = "\n\nTake care,\nYour Name\n\nYou can unsubscribe at any time by returning to http://www.yoursite.com/newsletter/.";
// |||||||||||||||||||||||||||||||||||||||||||||||||| ||||||||||||||||||||
?>
[/CODE]
admin.php
Código:
newsletter.php<?php // |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| require("configure.php"); // |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| function render_header(){ global $PHP_SELF; echo "<html> <head> <title>Newletter Admin</title> <style type=\"text/css\"> body {background-color: #fff; margin: 10px;} h1,h2 {font-family: verdana,sans-serif; font-size: 11px; font-weight: normal; padding: 5px} h1 {background-color: #999;} h2 {background-color: #ccc;} p,a,input,textarea {font-family: verdana,sans-serif; font-size: 11px; color: #000;} a {color: #00f; text-decoration: none;} a:hover {text-decoration: underline;} a:visited {color: #609;} pre {font-size: 11px; background-color: #eee; padding: 5px;} input.button {padding: 1px 10px 1px 10px; cursor: pointer;} textarea {width: 500px; height: 250px; padding: 5px;} </style> </head> <body> <h1>Newletter Admin</h1> ";} function render_footer(){ echo "</body> </html> ";} function render_nav(){ echo "<h2><a href=\"$PHP_SELF?cmd=logout\">Logout</a></h2> ";} function render_login($message){ global $PHP_SELF; echo "<h2>$message</h2> <form action=\"$PHP_SELF\" method=\"post\"> <p>Username<br /><input type=\"text\" class=\"text\" name=\"username\" value=\"\" /></p> <p>Password<br /><input type=\"password\" class=\"text\" name=\"password\" value=\"\" /></p> <p><input type=\"submit\" class=\"button\" name=\"login\" value=\"Login\" /></p> <p>(Cookies must be enabled to maintain a user session.)</p> </form> <script type=\"text/javascript\">document.forms[0].username.focus();</script> </body> </html> ";} function render_editor(){ global $PHP_SELF, $subject, $message; echo "<form action=\"$PHP_SELF\" method=\"post\"> <input type=\"hidden\" name=\"cmd\" value=\"send\" /> <p>Subject:<br /> <input type=\"text\" class=\"text\" name=\"subject\" value=\"$subject\" /></p> <p>Message:<br /> <textarea cols=\"70\" rows=\"10\" name=\"message\">".stripslashes($message)."</textarea></p> <p><input type=\"submit\" class=\"button\" name=\"submit\" value=\"send\" /> <input type=\"submit\" class=\"button\" name=\"submit\" value=\"preview\" /></p> </form> ";} function render_preview(){ global $your_email; echo "<p>A test email has been sent to $your_email</p>"; render_editor(); } function logout(){ global $PHP_SELF; session_destroy(); header("Location: $PHP_SELF"); exit; } // |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| session_start(); session_register("SESSION_USER"); if(empty($SESSION_USER)){ if($username != $admin_username || $password != $admin_password){ render_header(); render_login((!isset($username) && !isset($password)) ? "Please Login." : "Incorrect Username or Password."); render_footer(); exit; }else{ $SESSION_USER = $admin_username; } } if($cmd == "logout"){ logout(); } // |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| render_header(); render_nav(); $fp = fopen($file_location,"r"); $file_data = fread($fp, filesize($file_location)); fclose($fp); $file_data = stripslashes($file_data); $rows = explode("%",$file_data); if($cmd == "send"){ $mail_subject = stripslashes($subject); $mail_body = stripslashes($newsletter_premail.$message.$newsletter_postmail); $mail_headers = "From: $mail_from <$your_email>"; if($html_email){ $mail_headers .= "\r\nContent-Type: text/html; charset=iso-8859-1"; } switch($submit){ case "send": $recipients = ""; foreach($rows as $i){ if($i != ""){ mail($i, $mail_subject, $mail_body, $mail_headers); $recipients .= "$i<br />"; } } if(!$html_email){ $mail_body = str_replace("<", "<", $mail_body); $mail_body = str_replace(">", ">", $mail_body); } echo "<p>The following email has been sent to:<br /> $recipients</p> <pre>$mail_headers</pre> <pre>Subject: $mail_subject</pre> <pre>$mail_body</pre> "; break; case "preview": mail($your_email, $mail_subject, $mail_body, $mail_headers); render_preview(); } }else{ render_editor(); } render_footer(); // |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ?>
Código:
Les agradecería que le echaran un vistazo a ver si pueden dar con la solución<?php // |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| // Variables sent from Flash: // $cmd ("subscribe" || "unsubscribe") // $email // |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| error_reporting(0); require("configure.php"); function valid_email($string){ return preg_match("/^[^\s()<>@,;:\"\/\[\]?=]+@\w[\w-]*(\.\w[\w-]*)*\.[a-z]{2,}$/i", $string); } $fp = fopen($file_location,"r"); $file_data = fread($fp, filesize($file_location)); fclose($fp); $file_data = stripslashes($file_data); $rows = explode("%",$file_data); $subscribers = ""; $emailfound = false; foreach($rows as $i){ if($i != ""){ if($i != $email){ $subscribers .= "%$i"; }else{ $emailfound = true; } } } switch($cmd){ case "subscribe": if($emailfound == true){ $message = $sorry_subscribe_message; } else if($email == ""){ $message = $sorry_blankmail_message; } else if(!valid_email($email)){ $message = $sorry_oddmail_message; } else if(preg_match("/".$pattern."/",$email)){ $message = $sorry_ownmail_message; } else{ $fp = fopen($file_location,"a"); $add = "%".$email; flock($fp, 1); fwrite($fp, $add); flock($fp, 3); fclose($fp); $mail_headers = ($html_email) ? "\r\nContent-Type: text/html; charset=iso-8859-1" : ""; mail($your_email, "New Newsletter Subscriber", "$email has subscribed to your newsletter.", "From: $mail_from <$email>".$mail_headers); mail($email, $subscribe_mail_subject, $subscribe_mail_body, "From: $mail_from <$your_email>".$mail_headers); $message = $subscribe_message; $email = ""; } break; case "unsubscribe": if($emailfound == true){ $fp = fopen($file_location,"w"); fwrite($fp, $subscribers); fclose($fp); $message = $unsubscribe_message; $email = ""; }else{ $message = $failed_unsubscribe_message; } } echo "email=$email&message=$message"; // |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ?>
Saludos