Author Topic: Registrierung nicht mehr möglich  (Read 15352 times)

0 Members and 1 Guest are viewing this topic.

Offline SolidSnake0308

  • Newbie
  • *
  • Posts: 21
    • View Profile
Registrierung nicht mehr möglich
« on: March 23, 2015, 03:55:51 PM »
Hallo 4Images Team,

ich wurde von meinem Hoster darauf aufmerksam gemacht, dass in der Register.php aufgrund Spam-Bots es zu einer Überlastung auf deren Servern kommt.
Das derzeitige Captcha wäre "nicht stark" genug, selbst ReCaptcha (hier als Mod angeboten) wäre angeblich "zu alt und nicht mehr effizient".
Ich solle zwingend umsteigen, "sonst.......".
Mir wurde das neue von Google empfohlen: https://www.google.com/recaptcha/intro/index.html

Hat der Fehler evtl. mit dem Hoster zu tun, da diese etwas "deaktiviert" haben?!

Leider weis ich keine Möglichkeit, wie ich das neue ReCaptcha ins 4Images einpflegen soll...
Google gibt mir zwar einen Code, den ich wohl ins register_form.html kopiere, aber das dürfte wohl noch nicht alles gewesen sein?! (...wenn ich mir den Aufwand des alten ReCaptcha eines anderen Threads hier anschaue, wie das einzupflegen ist.)

Anyway...Es kommt zu folgendem Fehler, sobald man die Registrierung abschließen möchte.

Quote
Warning: include(./includes/email.php) [function.include]: failed to open stream: Permission denied in /www/htdocs/.../caps/register.php on line 168

Warning: include(./includes/email.php) [function.include]: failed to open stream: Permission denied in /www/htdocs/.../caps/register.php on line 168

Warning: include(./includes/email.php) [function.include]: failed to open stream: Permission denied in /www/htdocs/.../caps/register.php on line 168

Warning: include() [function.include]: Failed opening './includes/email.php' for inclusion (include_path='.:/usr/share/php:..') in /www/htdocs/.../caps/register.php on line 168

Fatal error: Class 'Email' not found in /www/htdocs/.../caps/register.php on line 169


Ich hoffe auf eine Antwort, vielen Dank.
Wäre gleichzeitig super, wenn hier jemand eine Lösung hat wie ich das neue Google ReCaptcha in das Register-Formular einbinden kann, sodass das alte abgelöst wird und All-Inkl.com wieder zufrieden ist.
« Last Edit: March 23, 2015, 08:12:46 PM by SolidSnake0308 »

Rembrandt

  • Guest
Re: Registrierung nicht mehr möglich
« Reply #1 on: March 23, 2015, 04:27:16 PM »
Hi!

Also nach den Fehlermeldungen die du hier gepostet hast stimmen deine Pfadangaben nicht, aus welchen Grund jetzt auch immer.
Hast du vielleicht deinen Template Ordner wo anders hin verschoben?

Zum Chaptcha, kannst du das versuchen:
http://www.4homepages.de/forum/index.php?topic=28210.msg152417#msg152417
Bisher habe ich nichts Negatives darüber gehört das es nicht funktionieren soll.
Aber das würde ich erst dann einbauen wenn deine Galerie wieder funktioniert.

mfg Andi

Offline SolidSnake0308

  • Newbie
  • *
  • Posts: 21
    • View Profile
Re: Registrierung nicht mehr möglich
« Reply #2 on: March 23, 2015, 04:34:25 PM »
Hi Andi, danke für die schnelle Reaktion.

Das einzige, was ich veränderte habe, ist die register_form.html bei dem ich den Google ReCaptcha Code eingefügt hatte.
Verschoben o.ä. habe ich nichts.
Auch nach dem ich den Code wieder rausgelöscht hatte, bleibt der Fehler bestehen.
Ob der Fehler nun auch zeitlich davor war, kann ich leider nicht beantworten.
Wie gesagt: Der Hoster hat mich darauf aufmerksam gemacht, ich müsse ein neues Captcha-System einpflegen, dass das Alte zwingend ablöst.
Habe daraufhin den ReCaptcha Code rein, getestet und dann den Fehler entdeckt.

Danke für den Vorschlag, aber wie du sagtest, kann es leider jetzt erstmal noch nicht einbauen.
Hast du eine Ahnung, wie ich obiges Problem lösen kann?!

Rembrandt

  • Guest
Re: Registrierung nicht mehr möglich
« Reply #3 on: March 23, 2015, 05:20:37 PM »
Hast du dir vielleicht die email.php in Ordner includes gelöscht?

Offline SolidSnake0308

  • Newbie
  • *
  • Posts: 21
    • View Profile
Re: Registrierung nicht mehr möglich
« Reply #4 on: March 23, 2015, 07:16:14 PM »
Nein, ist vorhanden.

Rembrandt

  • Guest
Re: Registrierung nicht mehr möglich
« Reply #5 on: March 23, 2015, 07:17:53 PM »
gibt es ja nicht, die Fehlermeldung sagt ja:
Quote
Fatal error: Class 'Email' not found in /www/htdocs/w00b594a/caps/register.php on line 169
poste mal deine Register.php

Offline SolidSnake0308

  • Newbie
  • *
  • Posts: 21
    • View Profile
Re: Registrierung nicht mehr möglich
« Reply #6 on: March 23, 2015, 08:15:21 PM »
Doch... email.php ist vorhanden (siehe Anhang).

Register.php:
<?php
/**************************************************************************
 *                                                                        *
 *    4images - A Web Based Image Gallery Management System               *
 *    ----------------------------------------------------------------    *
 *                                                                        *
 *             File: register.php                                         *
 *        Copyright: (C) 2002-2012 Jan Sorgalla                           *
 *            Email: jan@4homepages.de                                    * 
 *              Web: http://www.4homepages.de                             * 
 *    Scriptversion: 1.7.11                                               *
 *                                                                        *
 *    Never released without support from: Nicky (http://www.nicky.net)   *
 *                                                                        *
 **************************************************************************
 *                                                                        *
 *    Dieses Script ist KEINE Freeware. Bitte lesen Sie die Lizenz-       *
 *    bedingungen (Lizenz.txt) für weitere Informationen.                 *
 *    ---------------------------------------------------------------     *
 *    This script is NOT freeware! Please read the Copyright Notice       *
 *    (Licence.txt) for further information.                              *
 *                                                                        *
 *************************************************************************/

$main_template 'register';

define('GET_CACHES'1);
define('ROOT_PATH''./');
define('MAIN_SCRIPT'__FILE__);
include(
ROOT_PATH.'global.php');
require(
ROOT_PATH.'includes/sessions.php');
$user_access get_permission();
include(
ROOT_PATH.'includes/page_header.php');

if (
$action == "") {
  
$action "signup";
}

if (
$user_info['user_level'] != GUEST && $action != "activate") {
  
show_error_page($lang['already_registered']);
}
$content "";

//-----------------------------------------------------
//--- Signup ------------------------------------------
//-----------------------------------------------------
if ($action == "signup") {
  
$site_template->register_vars(array(
    
"lang_agreement" => $lang['agreement'],
    
"lang_agreement_terms" => $lang['agreement_terms'],
    
"lang_agree" => $lang['agree'],
    
"lang_agree_not" => $lang['agree_not']
  ));
  
$content $site_template->parse_template("register_signup");
}

//-----------------------------------------------------
//--- Add New User ------------------------------------
//-----------------------------------------------------
if ($action == "register") {
  if (!isset(
$HTTP_POST_VARS['user_name'])) {
    if (
$config['activation_time'] != 0) {
      
$expiry time() - 60 60 24 $config['activation_time'];
      
$sql "DELETE FROM ".USERS_TABLE."
              WHERE ("
.get_user_table_field("""user_lastaction")." < $expiry) AND ".get_user_table_field("""user_level")." = ".USER_AWAITING;
      
$site_db->query($sql);
    }
  }
  
$user_name = (isset($HTTP_POST_VARS['user_name'])) ? un_htmlspecialchars(trim($HTTP_POST_VARS['user_name'])) : "";
  
$user_name preg_replace("/( ){2,}/"" "$user_name);
  
$user_password = (isset($HTTP_POST_VARS['user_password'])) ? trim($HTTP_POST_VARS['user_password']) : "";
  
$user_email = (isset($HTTP_POST_VARS['user_email'])) ? un_htmlspecialchars(trim($HTTP_POST_VARS['user_email'])) : "";
  
$user_showemail = (isset($HTTP_POST_VARS['user_showemail'])) ? intval($HTTP_POST_VARS['user_showemail']) : 0;
  
$user_allowemails = (isset($HTTP_POST_VARS['user_allowemails'])) ? intval($HTTP_POST_VARS['user_allowemails']) : 1;
  
$user_invisible = (isset($HTTP_POST_VARS['user_invisible'])) ? intval($HTTP_POST_VARS['user_invisible']) : 0;
  
$user_homepage = (isset($HTTP_POST_VARS['user_homepage'])) ? un_htmlspecialchars(trim($HTTP_POST_VARS['user_homepage'])) : "";
  
$user_icq = (isset($HTTP_POST_VARS['user_icq'])) ? ((intval(trim($HTTP_POST_VARS['user_icq']))) ? intval(trim($HTTP_POST_VARS['user_icq'])) : "") : "";

  
$captcha = (isset($HTTP_POST_VARS['captcha'])) ? un_htmlspecialchars(trim($HTTP_POST_VARS['captcha'])) : "";

  
$error 0;
  if (isset(
$HTTP_POST_VARS['user_name'])) {
    if (
$user_name != "") {
      
$sql "SELECT ".get_user_table_field("""user_name")."
              FROM "
.USERS_TABLE."
              WHERE "
.get_user_table_field("""user_name")." = '".strtolower($user_name)."'";
      if (
$site_db->not_empty($sql)) {
        
$msg .= (($msg != "") ? "<br />" "").$lang['username_exists'];
        
$error 1;
      }
    }
    else {
      
$msg .= (($msg != "") ? "<br />" "").$field_error preg_replace("/".$site_template->start."field_name".$site_template->end."/siU"str_replace(":"""$lang['user_name']), $lang['field_required']);
      
$error 1;
    }

    if (
$user_password == "") {
      
$msg .= (($msg != "") ? "<br />" "").$field_error preg_replace("/".$site_template->start."field_name".$site_template->end."/siU"str_replace(":"""$lang['password']), $lang['field_required']);
      
$error 1;
    }

    if (
$user_email != "") {
      if (
check_email($user_email)) {
        
$sql "SELECT ".get_user_table_field("""user_email")."
                FROM "
.USERS_TABLE."
                WHERE "
.get_user_table_field("""user_email")." = '".strtolower($user_email)."'";
        if (
$site_db->not_empty($sql)) {
          
$msg .= (($msg != "") ? "<br />" "").$lang['email_exists'];
          
$error 1;
        }
      }
      else {
        
$msg .= (($msg != "") ? "<br />" "").$lang['invalid_email_format'];
        
$error 1;
      }
    }
    else {
      
$msg .= (($msg != "") ? "<br />" "").$field_error preg_replace("/".$site_template->start."field_name".$site_template->end."/siU"str_replace(":"""$lang['email']), $lang['field_required']);
      
$error 1;
    }

    if (
$captcha_enable_registration && !captcha_validate($captcha)) {
      
$msg .= (($msg != "") ? "<br />" "").$lang['captcha_required'];
      
$error 1;
    }

    if (!empty(
$additional_user_fields)) {
      foreach (
$additional_user_fields as $key => $val) {
        if (isset(
$HTTP_POST_VARS[$key]) && intval($val[2]) == && trim($HTTP_POST_VARS[$key]) == "") {
          
$error 1;
          
$field_error preg_replace("/".$site_template->start."field_name".$site_template->end."/siU"str_replace(":"""$val[0]), $lang['field_required']);
          
$msg .= (($msg != "") ? "<br />" "").$field_error;
        }
      }
    }
  } 
// end if
  
else {
    
$error 1;
  }

  if (!
$error) {
    
$additional_field_sql "";
    
$additional_value_sql "";
    if (!empty(
$additional_user_fields)) {
      
$table_fields $site_db->get_table_fields(USERS_TABLE);
      foreach (
$additional_user_fields as $key => $val) {
        if (isset(
$HTTP_POST_VARS[$key]) && isset($table_fields[$key])) {
          
$additional_field_sql .= ", $key";
          
$additional_value_sql .= ", '".un_htmlspecialchars(trim($HTTP_POST_VARS[$key]))."'";
        }
      }
    }
    
$activationkey get_random_key(USERS_TABLEget_user_table_field(""$user_table_fields['user_activationkey']));
    
$user_id $site_db->get_next_id($user_table_fields['user_id'], USERS_TABLE);

    
$current_time time();
    
$user_level = ($config['account_activation'] == 0) ? USER USER_AWAITING;
    
$user_password_hashed salted_hash($user_password);
    
$sql "INSERT INTO ".USERS_TABLE."
            ("
.get_user_table_field("""user_id").get_user_table_field(", ""user_level").get_user_table_field(", ""user_name").get_user_table_field(", ""user_password").get_user_table_field(", ""user_email").get_user_table_field(", ""user_showemail").get_user_table_field(", ""user_allowemails").get_user_table_field(", ""user_invisible").get_user_table_field(", ""user_joindate").get_user_table_field(", ""user_activationkey").get_user_table_field(", ""user_lastaction").get_user_table_field(", ""user_lastvisit").get_user_table_field(", ""user_comments").get_user_table_field(", ""user_homepage").get_user_table_field(", ""user_icq").$additional_field_sql.")
            VALUES
            (
$user_id$user_level, '$user_name', '$user_password_hashed', '$user_email', $user_showemail$user_allowemails$user_invisible$current_time, '$activationkey', $current_time$current_time, 0, '$user_homepage', '$user_icq'".$additional_value_sql.")";
    
$result $site_db->query($sql);

    if (
$result) {
      
$activation_url $script_url."/register.php?action=activate&activationkey=".$activationkey;

      include(
ROOT_PATH.'includes/email.php');
      
$site_email = new Email();
      
$site_email->set_to($user_email);
      
$site_email->set_subject($lang['register_success_emailsubject']);
      
$site_email->register_vars(array(
        
"activation_url" => $activation_url,
        
"user_name" => $user_name,
        
"user_password" => $user_password,
        
"site_name" => $config['site_name']
      ));

      switch(
$config['account_activation']) {
      case 
2:
        
$email_template "register_activation_admin";
        
$msg $lang['register_success_admin'];
        break;
      case 
1:
        if (
$config['language_dir_default'] != $config['language_dir']) {
          
$activation_url .= "&l=".$config['language_dir'];
        }
        
$email_template "register_activation";
        
$msg $lang['register_success'];
        break;
      case 
0:
      default:
        
$email_template "register_activation_none";
        
$msg $lang['register_success_none'];
        break;
      }

      
$site_email->set_body($email_template$config['language_dir']);
      
$site_email->send_email();
      if (
$config['account_activation'] == 2) {
        
$site_email->reset();
        
$site_email->set_to($config['site_email']);
        
$site_email->set_subject($lang['admin_activation_emailsubject']);
        
$user_details_url $script_url."/admin/index.php?goto=".urlencode("users.php?action=edituser&user_id=".$user_id."&activation=1");
        
$site_email->register_vars("user_details_url"$user_details_url);
        
$site_email->set_body("admin_activation"$config['language_dir_default']);
        
$site_email->send_email();
      }
    }
    else {
      
$msg $lang['general_error'];
    }
  }

  if (
$error) {
    if (
$user_showemail == 1) {
      
$user_showemail_yes " checked=\"checked\"";
      
$user_showemail_no "";
    }
    else {
      
$user_showemail_yes "";
      
$user_showemail_no " checked=\"checked\"";
    }
    if (
$user_allowemails == 1) {
      
$user_allowemails_yes " checked=\"checked\"";
      
$user_allowemails_no "";
    }
    else {
      
$user_allowemails_yes "";
      
$user_allowemails_no " checked=\"checked\"";
    }
    if (
$user_invisible == 1) {
      
$user_invisible_yes " checked=\"checked\"";
      
$user_invisible_no "";
    }
    else {
      
$user_invisible_yes "";
      
$user_invisible_no " checked=\"checked\"";
    }
    
$site_template->register_vars(array(
      
"user_name" => format_text(stripslashes($user_name), 2),
      
"user_email" => format_text(stripslashes($user_email), 2),
      
"user_homepage" => format_text(stripslashes($user_homepage), 2),
      
"user_icq" => $user_icq,
      
"user_showemail_yes" => $user_showemail_yes,
      
"user_showemail_no" => $user_showemail_no,
      
"user_allowemails_yes" => $user_allowemails_yes,
      
"user_allowemails_no" => $user_allowemails_no,
      
"user_invisible_yes" => $user_invisible_yes,
      
"user_invisible_no" => $user_invisible_no,
      
"lang_user_name" => $lang['user_name'],
      
"lang_password" => $lang['password'],
      
"lang_email" => $lang['email'],
      
"lang_register_msg" => $lang['register_msg'],
      
"lang_submit" => $lang['submit'],
      
"lang_reset" => $lang['reset'],
      
"lang_email" => $lang['email'],
      
"lang_show_email" => $lang['show_email'],
      
"lang_allow_emails" => $lang['allow_emails'],
      
"lang_invisible" => $lang['invisible'],
      
"lang_optional_infos" => $lang['optional_infos'],
      
"lang_homepage" => $lang['homepage'],
      
"lang_icq" => $lang['icq'],
      
"lang_yes" => $lang['yes'],
      
"lang_no" => $lang['no'],
      
"lang_captcha" => $lang['captcha'],
      
"lang_captcha_desc" => $lang['captcha_desc'],
      
"captcha_registration" => (bool)$captcha_enable_registration
    
));

    if (!empty(
$additional_user_fields)) {
      
$additional_field_array = array();
      foreach (
$additional_user_fields as $key => $val) {
        if (
$val[1] == "radio") {
          
$value = (isset($HTTP_POST_VARS[$key])) ? intval($HTTP_POST_VARS[$key]) : 1;
          if (
$value == 1) {
            
$additional_field_array[$key.'_yes'] = " checked=\"checked\"";
            
$additional_field_array[$key.'_no'] = "";
          }
         else { 
            
$additional_field_array[$key.'_yes'] = ""
            
$additional_field_array[$key.'_no'] = " checked=\"checked\""
          } 
        } 
        elseif (
$val[1] == "dropdown") { 
          
$value = (isset($HTTP_POST_VARS[$key])) ? $HTTP_POST_VARS[$key] : $user_info[$key]; 
           
$additional_field_array[$key.'_dropdown'] = get_db_fields_dropdown($key$val$value); 
        }
        else {
          
$value = (isset($HTTP_POST_VARS[$key])) ? format_text(trim($HTTP_POST_VARS[$key]), 2) : "";
        }
        
$additional_field_array[$key] = $value;
        
$additional_field_array['lang_'.$key] = $val[0];
      }
      if (!empty(
$additional_field_array)) {
        
$site_template->register_vars($additional_field_array);
      }
    }

    
$content $site_template->parse_template("register_form");
  }
}

if (
$action == "activate") {
  if (
$config['activation_time'] != 0) {
    
$expiry time() - 60 60 24 $config['activation_time'];
    
$sql "DELETE FROM ".USERS_TABLE."
            WHERE ("
.get_user_table_field("""user_lastaction")." < $expiry) AND ".get_user_table_field("""user_level")." = ".USER_AWAITING;
    
$site_db->query($sql);
  }
  if (!isset(
$HTTP_GET_VARS['activationkey'])){
    
$msg $lang['missing_activationkey'];
  }
  else {
    if (
$config['account_activation'] == && $user_info['user_level'] != ADMIN) {
      
show_error_page($lang['no_permission']);
      exit;
    }
    
$activationkey trim($HTTP_GET_VARS['activationkey']);
    
$sql "SELECT ".get_user_table_field("""user_name").get_user_table_field(", ""user_email").get_user_table_field(", ""user_activationkey")."
            FROM "
.USERS_TABLE."
            WHERE "
.get_user_table_field("""user_activationkey")." = '$activationkey'";
    
$row $site_db->query_firstrow($sql);
    if (!
$row) {
      
$msg $lang['invalid_activationkey'];
    }
    else {
      
$sql "UPDATE ".USERS_TABLE."
              SET "
.get_user_table_field("""user_level")." = ".USER."
              WHERE "
.get_user_table_field("""user_activationkey")." = '$activationkey'";
      
$site_db->query($sql);
      
$msg $lang['activation_success'];

      if (
$config['account_activation'] == 2) {
        include(
ROOT_PATH.'includes/email.php');
        
$site_email = new Email();
        
$site_email->set_to($row[$user_table_fields['user_email']]);
        
$site_email->set_subject($lang['activation_success_emailsubject']);
        
$site_email->register_vars(array(
          
"user_name" => $row[$user_table_fields['user_name']],
          
"site_name" => $config['site_name']
        ));
        
$site_email->set_body("activation_success"$config['language_dir']);
        
$site_email->send_email();
      }
    }
  }
}

//-----------------------------------------------------
//--- Clickstream -------------------------------------
//-----------------------------------------------------
$clickstream "<span class=\"clickstream\"><a href=\"".$site_sess->url(ROOT_PATH."index.php")."\" class=\"clickstream\">".$lang['home']."</a>".$config['category_separator'].$lang['register']."</span>";

//-----------------------------------------------------
//--- Print Out ---------------------------------------
//-----------------------------------------------------
$site_template->register_vars(array(
  
"content" => $content,
  
"msg" => $msg,
  
"clickstream" => $clickstream,
  
"lang_register" => $lang['register']
));
$site_template->print_template($site_template->parse_template($main_template));
include(
ROOT_PATH.'includes/page_footer.php');
?>
« Last Edit: March 23, 2015, 09:11:16 PM by Rembrandt »

Rembrandt

  • Guest
Re: Registrierung nicht mehr möglich
« Reply #7 on: March 23, 2015, 09:26:11 PM »
Tja passt auch alles,..hmm

Offline SolidSnake0308

  • Newbie
  • *
  • Posts: 21
    • View Profile
Re: Registrierung nicht mehr möglich
« Reply #8 on: March 24, 2015, 04:04:16 PM »
Ja, hoffentlich kommt es noch zu einem Gedankenblitz.... :(

Rembrandt

  • Guest
Re: Registrierung nicht mehr möglich
« Reply #9 on: March 24, 2015, 05:22:00 PM »
Wenn du möchtest gib mir einen FTP Zugang und die Webseite per PM und ich sehe mir das an.

Offline SolidSnake0308

  • Newbie
  • *
  • Posts: 21
    • View Profile
Re: Registrierung nicht mehr möglich
« Reply #10 on: March 26, 2015, 07:53:26 PM »
Hast PM

Rembrandt

  • Guest
Re: Registrierung nicht mehr möglich
« Reply #11 on: March 26, 2015, 08:06:59 PM »
So, keine Ahnung wie du das angestellt hast aber die email.php war ganz einfach nicht vorhanden, am FTP war nur der Name "email.php".
« Last Edit: March 26, 2015, 09:18:04 PM by Rembrandt »

Offline SolidSnake0308

  • Newbie
  • *
  • Posts: 21
    • View Profile
Re: Registrierung nicht mehr möglich
« Reply #12 on: March 26, 2015, 09:33:47 PM »
Ja, funktioniert...!
Vielen Dank Andi. :D

Ich habe absolut keine Ahnung, wie das passiert sein soll... 8O
Dann werde ich mal dein Captcha drauf packen.

Edit:
Nachdem ich das eben gerade dem All-Inkl Support Team mitteilte (sie wollten eine Benachrichtigung wenn neues Captcha drin), bekam ich umgehend eine sehr schnelle Antwort, dass sie nun die "email.php wieder aktivieren werden".
Dies dürfte es wohl erklären, warum die email.php blanko war... ist halt irgendwie doch super, dass das vorher null angekündigt wird was da wo rumgespielt wird...

Anyway, es geht und danke dir!

« Last Edit: March 26, 2015, 10:02:38 PM by SolidSnake0308 »

Rembrandt

  • Guest
Re: Registrierung nicht mehr möglich
« Reply #13 on: March 27, 2015, 05:25:12 AM »
Ja, funktioniert...!
Vielen Dank Andi. :D

Ich habe absolut keine Ahnung, wie das passiert sein soll... 8O
Dann werde ich mal dein Captcha drauf packen.

Edit:
Nachdem ich das eben gerade dem All-Inkl Support Team mitteilte (sie wollten eine Benachrichtigung wenn neues Captcha drin), bekam ich umgehend eine sehr schnelle Antwort, dass sie nun die "email.php wieder aktivieren werden".
Dies dürfte es wohl erklären, warum die email.php blanko war... ist halt irgendwie doch super, dass das vorher null angekündigt wird was da wo rumgespielt wird...

Anyway, es geht und danke dir!



Die waren das? Na nicht schlecht....