Ankündigung

Einklappen
Keine Ankündigung bisher.

Ultimate SEO Plugin Internal Server Error

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Ultimate SEO Plugin Internal Server Error

    Hallo Zusammen,

    bei jedem Loginversuch entsteht ein Internal Server Error (500).
    Ich vermute, dass das Ultimate SEO Plugin schuld ist. Bei Deaktivierung erscheint der Fehler 500 nicht.
    Wir sind bei 1&1, PHP Version 5.5.3, Error Logs werden nicht geschrieben.

    htacces enthält:

    Options +FollowSymLinks
    RewriteEngine on
    RewriteBase /

    wie in der Anleitung beschrieben.

    ohne
    Options +FollowSymLinks
    wird der Fehler trotzdem angezeigt.

    Der Shop soll nächste Woche online gehen. Ich bitte um dringende Hilfe!

    #2
    Ultimate SEO Plugin Internal Server Error

    Kann niemand helfen????

    Kommentar


      #3
      Link zu diesem Shop wäre hilfreich

      Kommentar


        #4
        Ultimate SEO Plugin Internal Server Error

        Ha-Ra Onlineshop | Hans Raab online bestellen ✅ alle Produkte von Ha-Ra ✅ | tolle Angebote ✅ | kostenloser Versand ab 49,90 € | Blitzversand in DE ✅

        Kommentar


          #5
          Ultimate SEO Plugin Internal Server Error

          Bei mir kommt dieser Fehler:

          Internal Server Error


          The server encountered an internal error or misconfiguration and was unable to complete your request.
          Please contact the server administrator, and inform them of the time the error occurred, and anything you might have done that may have caused the error.
          More information about this error may be available in the server error log.
          Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

          Kommentar


            #6
            Poste mal den vollständigen Inhalt der .htaccess im Shopverzeichnis

            Kommentar


              #7
              Ultimate SEO Plugin Internal Server Error

              Code:
              Options +FollowSymLinks
              RewriteEngine on
              RewriteCond %{HTTP_HOST} ^schnell-geputzt\.de$
              RewriteRule ^(.*)$ https://www.schnell-geputzt.de/$1 [R=301,L]
              RewriteBase /
              
              
              ###############################################################################
              # Start Ultimate SEO URLs
              ###############################################################################
              
              # Handles the new URL formats
              RewriteRule ^(.*)-c-([0-9_]+)/(.*)-p-([0-9]+)(.*)$ index\.php?main_page=product_info&products_id=$4&cPath=$2&%{QUERY_STRING} [L]
              RewriteRule ^(.*)-c-([0-9_]+)/(.*)-pi-([0-9]+)(.*)$ index\.php?main_page=popup_image&pID=$4&cPath=$2&%{QUERY_STRING} [L]
              RewriteRule ^(.*)-c-([0-9_]+)/(.*)-pr-([0-9]+)(.*)$ index\.php?main_page=product_reviews&products_id=$4&cPath=$2&%{QUERY_STRING} [L]
              RewriteRule ^(.*)-c-([0-9_]+)/(.*)-pri-([0-9]+)(.*)$ index\.php?main_page=product_reviews_info&products_id=$4&cPath=$2&%{QUERY_STRING} [L]
              
              # Original (unchanged) URL formats
              RewriteRule ^(.*)-p-([0-9]+)(.*)$ index\.php?main_page=product_info&products_id=$2&%{QUERY_STRING} [L]
              RewriteRule ^(.*)-m-([0-9]+)(.*)$ index\.php?main_page=index&manufacturers_id=$2&%{QUERY_STRING} [L]
              RewriteRule ^(.*)-pi-([0-9]+)(.*)$ index\.php?main_page=popup_image&pID=$2&%{QUERY_STRING} [L]
              RewriteRule ^(.*)-pr-([0-9]+)(.*)$ index\.php?main_page=product_reviews&products_id=$2&%{QUERY_STRING} [L]
              RewriteRule ^(.*)-pri-([0-9]+)(.*)$ index\.php?main_page=product_reviews_info&products_id=$2&%{QUERY_STRING} [L]
              RewriteRule ^(.*)-ezp-([0-9]+)(.*)$ index\.php?main_page=page&id=$2&%{QUERY_STRING} [L]
              RewriteRule ^(.*)-c-([0-9_]+)(.*)$ index\.php?main_page=index&cPath=$2&%{QUERY_STRING} [L]
              
              # All other pages
              # Don't rewrite real files or directories
              RewriteCond %{REQUEST_FILENAME} !-f
              RewriteCond %{REQUEST_FILENAME} !-d
              RewriteRule ^(.*)$ index\.php?main_page=$1&%{QUERY_STRING} [L]
              Zuletzt geändert von webchills; 17.03.2016, 21:40.

              Kommentar


                #8
                Ändere mal auf

                Code:
                RewriteEngine on
                RewriteBase /
                
                ###############################################################################
                # Start Ultimate SEO URLs
                ###############################################################################
                
                # Handles the new URL formats
                RewriteRule ^(.*)-c-([0-9_]+)/(.*)-p-([0-9]+)(.*)$ index\.php?main_page=product_info&products_id=$4&cPath=$2&%{QUERY_STRING} [L]
                RewriteRule ^(.*)-c-([0-9_]+)/(.*)-pi-([0-9]+)(.*)$ index\.php?main_page=popup_image&pID=$4&cPath=$2&%{QUERY_STRING} [L]
                RewriteRule ^(.*)-c-([0-9_]+)/(.*)-pr-([0-9]+)(.*)$ index\.php?main_page=product_reviews&products_id=$4&cPath=$2&%{QUERY_STRING} [L]
                RewriteRule ^(.*)-c-([0-9_]+)/(.*)-pri-([0-9]+)(.*)$ index\.php?main_page=product_reviews_info&products_id=$4&cPath=$2&%{QUERY_STRING} [L]
                
                # Original (unchanged) URL formats
                RewriteRule ^(.*)-p-([0-9]+)(.*)$ index\.php?main_page=product_info&products_id=$2&%{QUERY_STRING} [L]
                RewriteRule ^(.*)-m-([0-9]+)(.*)$ index\.php?main_page=index&manufacturers_id=$2&%{QUERY_STRING} [L]
                RewriteRule ^(.*)-pi-([0-9]+)(.*)$ index\.php?main_page=popup_image&pID=$2&%{QUERY_STRING} [L]
                RewriteRule ^(.*)-pr-([0-9]+)(.*)$ index\.php?main_page=product_reviews&products_id=$2&%{QUERY_STRING} [L]
                RewriteRule ^(.*)-pri-([0-9]+)(.*)$ index\.php?main_page=product_reviews_info&products_id=$2&%{QUERY_STRING} [L]
                RewriteRule ^(.*)-ezp-([0-9]+)(.*)$ index\.php?main_page=page&id=$2&%{QUERY_STRING} [L]
                RewriteRule ^(.*)-c-([0-9_]+)(.*)$ index\.php?main_page=index&cPath=$2&%{QUERY_STRING} [L]
                
                # All other pages
                # Don't rewrite real files or directories
                RewriteCond %{REQUEST_FILENAME} !-f
                RewriteCond %{REQUEST_FILENAME} !-d
                RewriteRule ^(.*)$ index\.php?main_page=$1&%{QUERY_STRING} [L]
                Ändert das was?
                Falls nicht, poste bitte auch den kompletten Inhalt der folgenden Dateien:
                includes/modules/pages/login/header_php.php
                includes/functions/html_output.php
                Verwende für den Inhalt immer die Code Schaltflächen (# Symbol im Editor)

                Kommentar


                  #9
                  Ultimate SEO Plugin Internal Server Error

                  Die Änderung in der htacess hat den Fehler leider nicht behoben.

                  header_php.php
                  Code:
                  <?php
                  /**
                   * Login Page
                   *
                   * @package page
                   * @copyright Copyright 2003-2014 Zen Cart Development Team
                   * @copyright Portions Copyright 2003 osCommerce
                   * @license http://www.zen-cart-pro.at/license/2_0.txt GNU Public License V2.0
                   * @version $Id: header_php.php 730 2014-07-05 10:49:16Z webchills $
                   */
                  
                  // This should be first line of the script:
                  $zco_notifier->notify('NOTIFY_HEADER_START_LOGIN');
                  
                  // redirect the customer to a friendly cookie-must-be-enabled page if cookies are disabled (or the session has not started)
                  if ($session_started == false) {
                    zen_redirect(zen_href_link(FILENAME_COOKIE_USAGE));
                  }
                  
                  // if the customer is logged in already, redirect them to the My account page
                  if (isset($_SESSION['customer_id']) and $_SESSION['customer_id'] != '') {
                    zen_redirect(zen_href_link(FILENAME_ACCOUNT, '', 'SSL'));
                  }
                  
                  require(DIR_WS_MODULES . zen_get_module_directory('require_languages.php'));
                  include(DIR_WS_MODULES . zen_get_module_directory(FILENAME_CREATE_ACCOUNT));
                  
                  $error = false;
                  if (isset($_GET['action']) && ($_GET['action'] == 'process')) {
                    $email_address = zen_db_prepare_input($_POST['email_address']);
                    $password = zen_db_prepare_input($_POST['password']);
                    $loginAuthorized = false;
                  
                    /* Privacy-policy-read does not need to be checked during "login"
                    if (DISPLAY_PRIVACY_CONDITIONS == 'true') {
                    if (!isset($_POST['privacy_conditions']) || ($_POST['privacy_conditions'] != '1')) {
                    $error = true;
                    $messageStack->add('create_account', ERROR_PRIVACY_STATEMENT_NOT_ACCEPTED, 'error');
                    }
                    }
                    */
                  
                      // Check if email exists
                      $check_customer_query = "SELECT customers_id, customers_firstname, customers_lastname, customers_password,
                                                      customers_email_address, customers_default_address_id,
                                                      customers_authorization, customers_referral
                                             FROM " . TABLE_CUSTOMERS . "
                                             WHERE customers_email_address = :emailAddress";
                  
                      $check_customer_query  =$db->bindVars($check_customer_query, ':emailAddress', $email_address, 'string');
                      $check_customer = $db->Execute($check_customer_query);
                  
                      if (!$check_customer->RecordCount()) {
                        $error = true;
                        $messageStack->add('login', TEXT_LOGIN_ERROR);
                      } elseif ($check_customer->fields['customers_authorization'] == '4') {
                        // this account is banned
                        $zco_notifier->notify('NOTIFY_LOGIN_BANNED');
                        $messageStack->add('login', TEXT_LOGIN_BANNED);
                      } else {
                  
                        $dbPassword = $check_customer->fields['customers_password'];
                        // Check whether the password is good
                        if (zen_validate_password($password, $dbPassword)) {
                          $loginAuthorized = true;
                          if (password_needs_rehash($dbPassword, PASSWORD_DEFAULT)) {
                            $newPassword = zcPassword::getInstance(PHP_VERSION)->updateNotLoggedInCustomerPassword($password, $email_address);
                          }
                        }
                  
                        $zco_notifier->notify('NOTIFY_PROCESS_3RD_PARTY_LOGINS', $email_address, $password, $loginAuthorized);
                  
                        if (!$loginAuthorized) {
                          $error = true;
                          $messageStack->add('login', TEXT_LOGIN_ERROR);
                        } else {
                          if (SESSION_RECREATE == 'True') {
                            zen_session_recreate();
                          }
                  
                          $check_country_query = "SELECT entry_country_id, entry_zone_id
                                                FROM " . TABLE_ADDRESS_BOOK . "
                                                WHERE customers_id = :customersID
                                                AND address_book_id = :addressBookID";
                  
                          $check_country_query = $db->bindVars($check_country_query, ':customersID', $check_customer->fields['customers_id'], 'integer');
                          $check_country_query = $db->bindVars($check_country_query, ':addressBookID', $check_customer->fields['customers_default_address_id'], 'integer');
                          $check_country = $db->Execute($check_country_query);
                  
                          $_SESSION['customer_id'] = $check_customer->fields['customers_id'];
                          $_SESSION['customer_default_address_id'] = $check_customer->fields['customers_default_address_id'];
                          $_SESSION['customers_authorization'] = $check_customer->fields['customers_authorization'];
                          $_SESSION['customer_first_name'] = $check_customer->fields['customers_firstname'];
                          $_SESSION['customer_last_name'] = $check_customer->fields['customers_lastname'];
                          $_SESSION['customer_country_id'] = $check_country->fields['entry_country_id'];
                          $_SESSION['customer_zone_id'] = $check_country->fields['entry_zone_id'];
                  
                          // enforce db integrity: make sure related record exists
                          $sql = "SELECT customers_info_date_of_last_logon FROM " . TABLE_CUSTOMERS_INFO . " WHERE customers_info_id = :customersID";
                          $sql = $db->bindVars($sql, ':customersID',  $_SESSION['customer_id'], 'integer');
                          $result = $db->Execute($sql);
                          if ($result->RecordCount() == 0) {
                            $sql = "insert into " . TABLE_CUSTOMERS_INFO . " (customers_info_id) values (:customersID)";
                            $sql = $db->bindVars($sql, ':customersID',  $_SESSION['customer_id'], 'integer');
                            $db->Execute($sql);
                          }
                  
                          // update login count
                          $sql = "UPDATE " . TABLE_CUSTOMERS_INFO . "
                                SET customers_info_date_of_last_logon = now(),
                                    customers_info_number_of_logons = IF(customers_info_number_of_logons, customers_info_number_of_logons+1, 1)
                                WHERE customers_info_id = :customersID";
                  
                          $sql = $db->bindVars($sql, ':customersID',  $_SESSION['customer_id'], 'integer');
                          $db->Execute($sql);
                          $zco_notifier->notify('NOTIFY_LOGIN_SUCCESS');
                  
                          // bof: contents merge notice
                          // save current cart contents count if required
                          if (SHOW_SHOPPING_CART_COMBINED > 0) {
                            $zc_check_basket_before = $_SESSION['cart']->count_contents();
                          }
                  
                          // bof: not require part of contents merge notice
                          // restore cart contents
                          $_SESSION['cart']->restore_contents();
                          // eof: not require part of contents merge notice
                  
                          // check current cart contents count if required
                          if (SHOW_SHOPPING_CART_COMBINED > 0 && $zc_check_basket_before > 0) {
                            $zc_check_basket_after = $_SESSION['cart']->count_contents();
                            if (($zc_check_basket_before != $zc_check_basket_after) && $_SESSION['cart']->count_contents() > 0 && SHOW_SHOPPING_CART_COMBINED > 0) {
                              if (SHOW_SHOPPING_CART_COMBINED == 2) {
                                // warning only do not send to cart
                                $messageStack->add_session('header', WARNING_SHOPPING_CART_COMBINED, 'caution');
                              }
                              if (SHOW_SHOPPING_CART_COMBINED == 1) {
                                // show warning and send to shopping cart for review
                                $messageStack->add_session('shopping_cart', WARNING_SHOPPING_CART_COMBINED, 'caution');
                                zen_redirect(zen_href_link(FILENAME_SHOPPING_CART, '', 'NONSSL'));
                              }
                            }
                          }
                          // eof: contents merge notice
                  
                          if (sizeof($_SESSION['navigation']->snapshot) > 0) {
                            //    $back = sizeof($_SESSION['navigation']->path)-2;
                            //if (isset($_SESSION['navigation']->path[$back]['page'])) {
                            //    if (sizeof($_SESSION['navigation']->path)-2 > 0) {
                            $origin_href = zen_href_link($_SESSION['navigation']->snapshot['page'], zen_array_to_string($_SESSION['navigation']->snapshot['get'], array(zen_session_name())), $_SESSION['navigation']->snapshot['mode']);
                            //            $origin_href = zen_back_link_only(true);
                            $_SESSION['navigation']->clear_snapshot();
                            zen_redirect($origin_href);
                          } else {
                            zen_redirect(zen_href_link(FILENAME_DEFAULT, '', $request_type));
                          }
                        }
                      }
                  }
                  if ($error == true) {
                    $zco_notifier->notify('NOTIFY_LOGIN_FAILURE');
                  }
                  
                  $breadcrumb->add(NAVBAR_TITLE);
                  
                  // Check for PayPal express checkout button suitability:
                  $paypalec_enabled = (defined('MODULE_PAYMENT_PAYPALWPP_STATUS') && MODULE_PAYMENT_PAYPALWPP_STATUS == 'True' && defined('MODULE_PAYMENT_PAYPALWPP_ECS_BUTTON') && MODULE_PAYMENT_PAYPALWPP_ECS_BUTTON == 'On');
                  // Check for express checkout button suitability:
                  $ec_button_enabled = ($paypalec_enabled && ($_SESSION['cart']->count_contents() > 0 && $_SESSION['cart']->total > 0));
                  
                  
                  // This should be last line of the script:
                  $zco_notifier->notify('NOTIFY_HEADER_END_LOGIN');


                  html_output.php:
                  Code:
                  <?php
                  /**
                   * html_output.php
                   * HTML-generating functions used throughout the core
                   *
                   * @package functions
                   * @copyright Copyright 2003-2014 Zen Cart Development Team
                   * @copyright Portions Copyright 2003 osCommerce
                   * @license http://www.zen-cart-pro.at/license/2_0.txt GNU Public License V2.0
                   * @version $Id: html_output.php for Ultimate SEO 2.4 2014-08-20 10:12:09Z webchills $
                   */
                  
                  /*
                   * The HTML href link wrapper function
                   */
                    function zen_href_link($page = '', $parameters = '', $connection = 'NONSSL', $add_session_id = true, $search_engine_safe = true, $static = false, $use_dir_ws_catalog = true) {
                      global $request_type, $session_started, $http_domain, $https_domain;
                  
                      // START alternative URLs patch
                      global $seo_urls;
                      $link = null;
                      if(isset($seo_urls)) {
                          $link = $seo_urls->href_link($page, $parameters, $connection, $add_session_id, $static, $use_dir_ws_catalog);
                          if($link !== null) return $link;
                      }
                      // END alternative URLs patch
                  
                      if (!zen_not_null($page)) {
                        die('</td></tr></table></td></tr></table><br /><br /><strong class="note">Error!<br /><br />Unable to determine the page link!</strong><br /><br /><!--' . $page . '<br />' . $parameters . ' -->');
                      }
                  
                      if ($connection == 'NONSSL') {
                        $link = HTTP_SERVER;
                      } elseif ($connection == 'SSL') {
                        if (ENABLE_SSL == 'true') {
                          $link = HTTPS_SERVER ;
                        } else {
                          $link = HTTP_SERVER;
                        }
                      } else {
                        die('</td></tr></table></td></tr></table><br /><br /><strong class="note">Error!<br /><br />Unable to determine connection method on a link!<br /><br />Known methods: NONSSL SSL</strong><br /><br />');
                      }
                  
                      if ($use_dir_ws_catalog) {
                        if ($connection == 'SSL' && ENABLE_SSL == 'true') {
                          $link .= DIR_WS_HTTPS_CATALOG;
                        } else {
                          $link .= DIR_WS_CATALOG;
                        }
                      }
                  
                      if (!$static) {
                        if (zen_not_null($parameters)) {
                          $link .= 'index.php?main_page='. $page . "&" . zen_output_string($parameters);
                        } else {
                          $link .= 'index.php?main_page=' . $page;
                        }
                      } else {
                        if (zen_not_null($parameters)) {
                          $link .= $page . "?" . zen_output_string($parameters);
                        } else {
                          $link .= $page;
                        }
                      }
                  
                      $separator = '&';
                  
                      while ( (substr($link, -1) == '&') || (substr($link, -1) == '?') ) $link = substr($link, 0, -1);
                  // Add the session ID when moving from different HTTP and HTTPS servers, or when SID is defined
                      if ( ($add_session_id == true) && ($session_started == true) && (SESSION_FORCE_COOKIE_USE == 'False') ) {
                        if (defined('SID') && zen_not_null(constant('SID'))) {
                          $sid = constant('SID');
                  //      } elseif ( ( ($request_type == 'NONSSL') && ($connection == 'SSL') && (ENABLE_SSL_ADMIN == 'true') ) || ( ($request_type == 'SSL') && ($connection == 'NONSSL') ) ) {
                        } elseif ( ( ($request_type == 'NONSSL') && ($connection == 'SSL') && (ENABLE_SSL == 'true') ) || ( ($request_type == 'SSL') && ($connection == 'NONSSL') ) ) {
                          if ($http_domain != $https_domain) {
                            $sid = zen_session_name() . '=' . zen_session_id();
                          }
                        }
                      }
                  
                  // clean up the link before processing
                      while (strstr($link, '&&')) $link = str_replace('&&', '&', $link);
                      while (strstr($link, '&amp;&amp;')) $link = str_replace('&amp;&amp;', '&amp;', $link);
                  
                      if ( (SEARCH_ENGINE_FRIENDLY_URLS == 'true') && ($search_engine_safe == true) ) {
                        while (strstr($link, '&&')) $link = str_replace('&&', '&', $link);
                  
                        $link = str_replace('&amp;', '/', $link);
                        $link = str_replace('?', '/', $link);
                        $link = str_replace('&', '/', $link);
                        $link = str_replace('=', '/', $link);
                  
                        $separator = '?';
                      }
                  
                      if (isset($sid)) {
                        $link .= $separator . zen_output_string($sid);
                      }
                  
                  // clean up the link after processing
                      while (strstr($link, '&amp;&amp;')) $link = str_replace('&amp;&amp;', '&amp;', $link);
                  
                      $link = preg_replace('/&/', '&amp;', $link);
                      return $link;
                    }
                  
                  
                  /*
                   * The HTML image wrapper function for non-proportional images
                   * used when "proportional images" is turned off or if calling from a template directory
                   */
                    function zen_image_OLD($src, $alt = '', $width = '', $height = '', $parameters = '') {
                      global $template_dir;
                  
                  //auto replace with defined missing image
                      if ($src == DIR_WS_IMAGES and PRODUCTS_IMAGE_NO_IMAGE_STATUS == '1') {
                        $src = DIR_WS_IMAGES . PRODUCTS_IMAGE_NO_IMAGE;
                      }
                  
                      if ( (empty($src) || ($src == DIR_WS_IMAGES)) && (IMAGE_REQUIRED == 'false') ) {
                        return false;
                      }
                  
                      // if not in current template switch to template_default
                      if (!file_exists($src)) {
                        $src = str_replace(DIR_WS_TEMPLATES . $template_dir, DIR_WS_TEMPLATES . 'template_default', $src);
                      }
                  
                  // alt is added to the img tag even if it is null to prevent browsers from outputting
                  // the image filename as default
                      $image = '<img src="' . zen_output_string($src) . '" alt="' . zen_output_string($alt) . '"';
                  
                      if (zen_not_null($alt)) {
                        $image .= ' title=" ' . zen_output_string($alt) . ' "';
                      }
                  
                      if ( (CONFIG_CALCULATE_IMAGE_SIZE == 'true') && (empty($width) || empty($height)) ) {
                        if ($image_size = @getimagesize($src)) {
                          if (empty($width) && zen_not_null($height)) {
                            $ratio = $height / $image_size[1];
                            $width = $image_size[0] * $ratio;
                          } elseif (zen_not_null($width) && empty($height)) {
                            $ratio = $width / $image_size[0];
                            $height = $image_size[1] * $ratio;
                          } elseif (empty($width) && empty($height)) {
                            $width = $image_size[0];
                            $height = $image_size[1];
                          }
                        } elseif (IMAGE_REQUIRED == 'false') {
                          return false;
                        }
                      }
                  
                      if (zen_not_null($width) && zen_not_null($height)) {
                        $image .= ' width="' . zen_output_string($width) . '" height="' . zen_output_string($height) . '"';
                      }
                  
                      if (zen_not_null($parameters)) $image .= ' ' . $parameters;
                  
                      $image .= ' />';
                  
                      return $image;
                    }
                  
                  
                  /*
                   * The HTML image wrapper function
                   */
                    function zen_image($src, $alt = '', $width = '', $height = '', $parameters = '') {
                      global $template_dir, $zco_notifier;
                  
                      // soft clean the alt tag
                      $alt = zen_clean_html($alt);
                  
                      // use old method on template images
                      if (strstr($src, 'includes/templates') or strstr($src, 'includes/languages') or PROPORTIONAL_IMAGES_STATUS == '0') {
                        return zen_image_OLD($src, $alt, $width, $height, $parameters);
                      }
                  
                  //auto replace with defined missing image
                      if ($src == DIR_WS_IMAGES and PRODUCTS_IMAGE_NO_IMAGE_STATUS == '1') {
                        $src = DIR_WS_IMAGES . PRODUCTS_IMAGE_NO_IMAGE;
                      }
                  
                      if ( (empty($src) || ($src == DIR_WS_IMAGES)) && (IMAGE_REQUIRED == 'false') ) {
                        return false;
                      }
                  
                      // if not in current template switch to template_default
                      if (!file_exists($src)) {
                        $src = str_replace(DIR_WS_TEMPLATES . $template_dir, DIR_WS_TEMPLATES . 'template_default', $src);
                      }
                  
                      // hook for handle_image() function such as Image Handler etc
                      if (function_exists('handle_image')) {
                        $newimg = handle_image($src, $alt, $width, $height, $parameters);
                        list($src, $alt, $width, $height, $parameters) = $newimg;
                        $zco_notifier->notify('NOTIFY_HANDLE_IMAGE', array($newimg));
                      }
                  
                      // Convert width/height to int for proper validation.
                      // intval() used to support compatibility with plugins like image-handler
                      $width = empty($width) ? $width : intval($width);
                      $height = empty($height) ? $height : intval($height);
                  
                  // alt is added to the img tag even if it is null to prevent browsers from outputting
                  // the image filename as default
                      $image = '<img src="' . zen_output_string($src) . '" alt="' . zen_output_string($alt) . '"';
                  
                      if (zen_not_null($alt)) {
                        $image .= ' title=" ' . zen_output_string($alt) . ' "';
                      }
                  
                      if ( ((CONFIG_CALCULATE_IMAGE_SIZE == 'true') && (empty($width) || empty($height))) ) {
                        if ($image_size = @getimagesize($src)) {
                          if (empty($width) && zen_not_null($height)) {
                            $ratio = $height / $image_size[1];
                            $width = $image_size[0] * $ratio;
                          } elseif (zen_not_null($width) && empty($height)) {
                            $ratio = $width / $image_size[0];
                            $height = $image_size[1] * $ratio;
                          } elseif (empty($width) && empty($height)) {
                            $width = $image_size[0];
                            $height = $image_size[1];
                          }
                        } elseif (IMAGE_REQUIRED == 'false') {
                          return false;
                        }
                      }
                  
                  
                      if (zen_not_null($width) && zen_not_null($height) and file_exists($src)) {
                  //      $image .= ' width="' . zen_output_string($width) . '" height="' . zen_output_string($height) . '"';
                  // proportional images
                        $image_size = @getimagesize($src);
                        // fix division by zero error
                        $ratio = ($image_size[0] != 0 ? $width / $image_size[0] : 1);
                        if ($image_size[1]*$ratio > $height) {
                          $ratio = $height / $image_size[1];
                          $width = $image_size[0] * $ratio;
                        } else {
                          $height = $image_size[1] * $ratio;
                        }
                  // only use proportional image when image is larger than proportional size
                        if ($image_size[0] < $width and $image_size[1] < $height) {
                          $image .= ' width="' . $image_size[0] . '" height="' . intval($image_size[1]) . '"';
                        } else {
                          $image .= ' width="' . round($width) . '" height="' . round($height) . '"';
                        }
                      } else {
                         // override on missing image to allow for proportional and required/not required
                        if (IMAGE_REQUIRED == 'false') {
                          return false;
                        } else if (substr($src, 0, 4) != 'http') {
                          $image .= ' width="' . intval(SMALL_IMAGE_WIDTH) . '" height="' . intval(SMALL_IMAGE_HEIGHT) . '"';
                        }
                      }
                  
                      // inject rollover class if one is defined. NOTE: This could end up with 2 "class" elements if $parameters contains "class" already.
                      if (defined('IMAGE_ROLLOVER_CLASS') && IMAGE_ROLLOVER_CLASS != '') {
                        $parameters .= (zen_not_null($parameters) ? ' ' : '') . 'class="rollover"';
                      }
                      // add $parameters to the tag output
                      if (zen_not_null($parameters)) $image .= ' ' . $parameters;
                  
                      $image .= ' />';
                  
                      return $image;
                    }
                  
                  /*
                   * The HTML form submit button wrapper function
                   * Outputs a "submit" button in the selected language
                   */
                    function zen_image_submit($image, $alt = '', $parameters = '', $sec_class = '') {
                      global $template, $current_page_base, $zco_notifier;
                      if (strtolower(IMAGE_USE_CSS_BUTTONS) == 'yes' && strlen($alt)<30) return zenCssButton($image, $alt, 'submit', $sec_class, $parameters);
                      $zco_notifier->notify('PAGE_OUTPUT_IMAGE_SUBMIT');
                  
                      $image_submit = '<input type="image" src="' . zen_output_string($template->get_template_dir($image, DIR_WS_TEMPLATE, $current_page_base, 'buttons/' . $_SESSION['language'] . '/') . $image) . '" alt="' . zen_output_string($alt) . '"';
                  
                      if (zen_not_null($alt)) $image_submit .= ' title=" ' . zen_output_string($alt) . ' "';
                  
                      if (zen_not_null($parameters)) $image_submit .= ' ' . $parameters;
                  
                      $image_submit .= ' />';
                  
                      return $image_submit;
                    }
                  
                  /*
                   * Output a function button in the selected language
                   */
                    function zen_image_button($image, $alt = '', $parameters = '', $sec_class = '') {
                      global $template, $current_page_base, $zco_notifier;
                  
                      // inject rollover class if one is defined. NOTE: This could end up with 2 "class" elements if $parameters contains "class" already.
                      if (defined('IMAGE_ROLLOVER_CLASS') && IMAGE_ROLLOVER_CLASS != '') {
                        $parameters .= (zen_not_null($parameters) ? ' ' : '') . 'class="rollover"';
                      }
                  
                      $zco_notifier->notify('PAGE_OUTPUT_IMAGE_BUTTON');
                      if (strtolower(IMAGE_USE_CSS_BUTTONS) == 'yes') return zenCssButton($image, $alt, 'button', $sec_class, $parameters);
                      return zen_image($template->get_template_dir($image, DIR_WS_TEMPLATE, $current_page_base, 'buttons/' . $_SESSION['language'] . '/') . $image, $alt, '', '', $parameters);
                    }
                  
                  
                  /**
                   * generate CSS buttons in the current language
                   * concept from contributions by Seb Rouleau and paulm, subsequently adapted to Zen Cart
                   * note: any hard-coded buttons will not be able to use this function
                  **/
                    function zenCssButton($image = '', $text, $type, $sec_class = '', $parameters = '') {
                     global $css_button_text, $css_button_opts, $template, $current_page_base, $language;
                  
                     $button_name = basename($image, '.gif');
                  
                      // if no secondary class is set use the image name for the sec_class
                      if (empty($sec_class)) $sec_class = $button_name;
                      if(!empty($sec_class)) $sec_class = ' ' . $sec_class;
                      if(!empty($parameters))$parameters = ' ' . $parameters;
                      $mouse_out_class  = 'cssButton ' . (($type == 'submit') ? 'submit_button button ' : 'normal_button button ') . $sec_class;
                      $mouse_over_class = 'cssButtonHover ' . (($type == 'button') ? 'normal_button button ' : '') . $sec_class . $sec_class . 'Hover';
                      // javascript to set different classes on mouseover and mouseout: enables hover effect on the buttons
                      // (pure css hovers on non link elements do work work in every browser)
                      $css_button_js .=  'onmouseover="this.className=\''. $mouse_over_class . '\'" onmouseout="this.className=\'' . $mouse_out_class . '\'"';
                  
                      if (CSS_BUTTON_POPUPS_IS_ARRAY == 'true') {
                        $popuptext = (!empty($css_button_text[$button_name])) ? $css_button_text[$button_name] : ($button_name . CSSBUTTONS_CATALOG_POPUPS_SHOW_BUTTON_NAMES_TEXT);
                        $tooltip = ' title="' . $popuptext . '"';
                      } else {
                        $tooltip = '';
                      }
                      $css_button = '';
                  
                      if ($type == 'submit'){
                        // form input button
                        if ($parameters != '') {
                          // If the input parameters include a "name" attribute, need to emulate an <input type="image" /> return value by adding a _x to the name parameter (creds to paulm)
                          if (preg_match('/name="([a-zA-Z0-9\-_]+)"/', $parameters, $matches)) {
                            $parameters = str_replace('name="' . $matches[1], 'name="' . $matches[1] . '_x', $parameters);
                          }
                          // If the input parameters include a "value" attribute, remove it since that attribute will be set to the input text string.
                          if (preg_match('/(value="[a-zA-Z0=9\-_]+")/', $parameters, $matches)) {
                            $parameters = str_replace($matches[1], '', $parameters);
                          }
                        }
                  
                        $css_button = '<input class="' . $mouse_out_class . '" ' . $css_button_js . ' type="submit" value="' . $text . '"' . $tooltip . $parameters . ' />';
                      }
                  
                      if ($type=='button'){
                        // link button
                        $css_button = '<span class="' . $mouse_out_class . '" ' . $css_button_js . $tooltip . $parameters . '>&nbsp;' . $text . '&nbsp;</span>';
                      }
                      return $css_button;
                    }
                  
                  
                  /*
                   *  Output a separator either through whitespace, or with an image
                   */
                    function zen_draw_separator($image = 'true', $width = '100%', $height = '1') {
                  
                      // set default to use from template - zen_image will translate if not found in current template
                      if ($image == 'true') {
                        $image = DIR_WS_TEMPLATE_IMAGES . OTHER_IMAGE_BLACK_SEPARATOR;
                      } else {
                        if (!strstr($image, DIR_WS_TEMPLATE_IMAGES)) {
                          $image = DIR_WS_TEMPLATE_IMAGES . $image;
                        }
                      }
                      return zen_image($image, '', $width, $height);
                    }
                  
                  /*
                   *  Output a form
                   */
                    function zen_draw_form($name, $action, $method = 'post', $parameters = '') {
                      $form = '<form name="' . zen_output_string($name) . '" action="' . zen_output_string($action) . '" method="' . zen_output_string($method) . '"';
                  
                      if (zen_not_null($parameters)) $form .= ' ' . $parameters;
                  
                      $form .= '>';
                      if (strtolower($method) == 'post') $form .= '<input type="hidden" name="securityToken" value="' . $_SESSION['securityToken'] . '" />';
                      return $form;
                    }
                  
                  /*
                   *  Output a form input field
                   */
                    function zen_draw_input_field($name, $value = '', $parameters = '', $type = 'text', $reinsert_value = true) {
                      $field = '<input type="' . zen_output_string($type) . '" name="' . zen_sanitize_string(zen_output_string($name)) . '"';
                      if ( (isset($GLOBALS[$name]) && is_string($GLOBALS[$name])) && ($reinsert_value == true) ) {
                        $field .= ' value="' . zen_output_string(stripslashes($GLOBALS[$name])) . '"';
                      } elseif (zen_not_null($value)) {
                        $field .= ' value="' . zen_output_string($value) . '"';
                      }
                  
                      if (zen_not_null($parameters)) $field .= ' ' . $parameters;
                  
                      $field .= ' />';
                  
                      return $field;
                    }
                  
                  /*
                   *  Output a form password field
                   */
                    function zen_draw_password_field($name, $value = '', $parameters = 'maxlength="40"') {
                      return zen_draw_input_field($name, $value, $parameters, 'password', true);
                    }
                  
                  /*
                   *  Output a selection field - alias function for zen_draw_checkbox_field() and zen_draw_radio_field()
                   */
                    function zen_draw_selection_field($name, $type, $value = '', $checked = false, $parameters = '') {
                      $selection = '<input type="' . zen_output_string($type) . '" name="' . zen_output_string($name) . '"';
                  
                      if (zen_not_null($value)) $selection .= ' value="' . zen_output_string($value) . '"';
                  
                      if ( ($checked == true) || ( isset($GLOBALS[$name]) && is_string($GLOBALS[$name]) && ( ($GLOBALS[$name] == 'on') || (isset($value) && (stripslashes($GLOBALS[$name]) == $value)) ) ) ) {
                        $selection .= ' checked="checked"';
                      }
                  
                      if (zen_not_null($parameters)) $selection .= ' ' . $parameters;
                  
                      $selection .= ' />';
                  
                      return $selection;
                    }
                  
                  /*
                   *  Output a form checkbox field
                   */
                    function zen_draw_checkbox_field($name, $value = '', $checked = false, $parameters = '') {
                      return zen_draw_selection_field($name, 'checkbox', $value, $checked, $parameters);
                    }
                  
                  /*
                   * Output a form radio field
                   */
                    function zen_draw_radio_field($name, $value = '', $checked = false, $parameters = '') {
                      return zen_draw_selection_field($name, 'radio', $value, $checked, $parameters);
                    }
                  
                  /*
                   *  Output a form textarea field
                   */
                    function zen_draw_textarea_field($name, $width, $height, $text = '~*~*#', $parameters = '', $reinsert_value = true) {
                      $field = '<textarea name="' . zen_output_string($name) . '" cols="' . zen_output_string($width) . '" rows="' . zen_output_string($height) . '"';
                  
                      if (zen_not_null($parameters)) $field .= ' ' . $parameters;
                  
                      $field .= '>';
                  
                      if ($text == '~*~*#' && (isset($GLOBALS[$name]) && is_string($GLOBALS[$name])) && ($reinsert_value == true) ) {
                        $field .= stripslashes($GLOBALS[$name]);
                      } elseif ($text != '~*~*#' && zen_not_null($text)) {
                        $field .= $text;
                      }
                  
                      $field .= '</textarea>';
                  
                      return $field;
                    }
                  
                  /*
                   *  Output a form hidden field
                   */
                    function zen_draw_hidden_field($name, $value = '', $parameters = '') {
                      $field = '<input type="hidden" name="' . zen_sanitize_string(zen_output_string($name)) . '"';
                  
                      if (zen_not_null($value)) {
                        $field .= ' value="' . zen_output_string($value) . '"';
                      } elseif (isset($GLOBALS[$name]) && is_string($GLOBALS[$name])) {
                        $field .= ' value="' . zen_output_string(stripslashes($GLOBALS[$name])) . '"';
                      }
                  
                      if (zen_not_null($parameters)) $field .= ' ' . $parameters;
                  
                      $field .= ' />';
                  
                      return $field;
                    }
                  
                  /*
                   * Output a form file-field
                   */
                    function zen_draw_file_field($name, $required = false) {
                      $field = zen_draw_input_field($name, '', ' size="50" ', 'file');
                  
                      return $field;
                    }
                  
                  
                  /*
                   *  Hide form elements while including session id info
                   *  IMPORTANT: This should be used in every FORM that has an OnSubmit() function tied to it, to prevent unexpected logouts
                   */
                    function zen_hide_session_id() {
                      global $session_started;
                  
                      if ( ($session_started == true) && defined('SID') && zen_not_null(SID) ) {
                        return zen_draw_hidden_field(zen_session_name(), zen_session_id());
                      }
                    }
                  
                  /*
                   *  Output a form pull down menu
                   *  Pulls values from a passed array, with the indicated option pre-selected
                   */
                    function zen_draw_pull_down_menu($name, $values, $default = '', $parameters = '', $required = false) {
                      $field = '<select name="' . zen_output_string($name) . '"';
                  
                      if (zen_not_null($parameters)) $field .= ' ' . $parameters;
                  
                      $field .= '>' . "\n";
                  
                      if (empty($default) && isset($GLOBALS[$name]) && is_string($GLOBALS[$name]) ) $default = stripslashes($GLOBALS[$name]);
                  
                      for ($i=0, $n=sizeof($values); $i<$n; $i++) {
                        $field .= '  <option value="' . zen_output_string($values[$i]['id']) . '"';
                        if ($default == $values[$i]['id']) {
                          $field .= ' selected="selected"';
                        }
                  
                        $field .= '>' . zen_output_string($values[$i]['text'], array('"' => '&quot;', '\'' => '&#039;', '<' => '&lt;', '>' => '&gt;')) . '</option>' . "\n";
                      }
                      $field .= '</select>' . "\n";
                  
                      if ($required == true) $field .= TEXT_FIELD_REQUIRED;
                  
                      return $field;
                    }
                  
                  /*
                   * Creates a pull-down list of countries
                   */
                    function zen_get_country_list($name, $selected = '', $parameters = '') {
                      $countriesAtTopOfList = array();
                      $countries_array = array(array('id' => '', 'text' => PULL_DOWN_DEFAULT));
                      $countries = zen_get_countries();
                  
                      // Set some default entries at top of list:
                      if (STORE_COUNTRY != SHOW_CREATE_ACCOUNT_DEFAULT_COUNTRY) $countriesAtTopOfList[] = SHOW_CREATE_ACCOUNT_DEFAULT_COUNTRY;
                      $countriesAtTopOfList[] = STORE_COUNTRY;
                      // Wenn Sie weitere Laender direkt am Anfang der Liste anzeigen lassen wollen, kommentieren Sie die Zeilen mit $countriesAtTopOfList aus.
                      // Sie koennen hier soviele Laender angeben wie Sie wollen, einfach weitere solcher Zeilen anlegen
                      // Beispiel: Deutschland ist 81, Oesterreich ist 14:
                      //$countriesAtTopOfList[] = 81;
                      //$countriesAtTopOfList[] = 14;
                  
                      //process array of top-of-list entries:
                      foreach ($countriesAtTopOfList as $key=>$val) {
                        $countries_array[] = array('id' => $val, 'text' => zen_get_country_name($val));
                      }
                      // now add anything not in the defaults list:
                      for ($i=0, $n=sizeof($countries); $i<$n; $i++) {
                        $alreadyInList = FALSE;
                        foreach($countriesAtTopOfList as $key=>$val) {
                          if ($countries[$i]['countries_id'] == $val)
                          {
                            // If you don't want to exclude entries already at the top of the list, comment out this next line:
                            $alreadyInList = TRUE;
                            continue;
                          }
                        }
                        if (!$alreadyInList) $countries_array[] = array('id' => $countries[$i]['countries_id'], 'text' => $countries[$i]['countries_name']);
                      }
                  
                      return zen_draw_pull_down_menu($name, $countries_array, $selected, $parameters);
                    }
                  /*
                   * Assesses suitability for additional parameters such as rel=nofollow etc
                   */
                    function zen_href_params($page = '', $parameters = '') {
                      global $current_page_base;
                      $addparms = '';
                      // if nofollow has already been set, ignore this function
                      if (stristr($parameters, 'nofollow')) return $parameters;
                      // if list of skippable pages has been set in meta_tags.php lang file (is by default), use that to add rel=nofollow params
                      if (defined('ROBOTS_PAGES_TO_SKIP') && in_array($page, explode(",", constant('ROBOTS_PAGES_TO_SKIP')))
                          || $current_page_base=='down_for_maintenance') $addparms = 'rel="nofollow"';
                      return ($parameters == '' ? $addparms : $parameters . ' ' . $addparms);
                    }
                  ?>

                  Kommentar


                    #10
                    Ändere mal in includes/functions/html_output.php
                    ca. Zeile 16

                    von

                    Code:
                    function zen_href_link($page = '', $parameters = '', $connection = 'NONSSL', $add_session_id = true, $search_engine_safe = true, $static = false, $use_dir_ws_catalog = true) {
                    auf

                    Code:
                    function zen_href_link($page = '', $parameters = '', $connection = 'SSL', $add_session_id = false, $search_engine_safe = true, $static = false, $use_dir_ws_catalog = true) {

                    Kommentar


                      #11
                      Wenn auch das nichts ändert, ist das alles Fischen im Trüben ohne die Error Logs zu kennen.
                      Wenn Zen Cart kein Error Log schreibt, dann muss aber trotzdem bei jedem Internal Server Error 500 ein Log geschrieben werden. Nicht im Ordner logs sondern im Server Error Log.
                      Bei einem 1und1 Shared Hosting hast Du auf diese Logs keinen Zugriff, daher kontaktiere den 1und1 Support und lass Dir den Inhalt des Server Error Logs für Internal Server Errors geben von heute, 17.03., 22 Uhr 50

                      Kommentar


                        #12
                        Ultimate SEO Plugin Internal Server Error

                        Das könnte es gewesen sein...! Ich habe mich 8 mal hintereinander eingeloggt ohne den Fehler angeziegt zu bekommen.
                        Ich hoffe sehr, das es jetzt funktioniert.
                        Schonmal 1000 Dank für deine Hilfe Webchills!
                        Ich werde mich trotzdem mal bei 1&1 nach den ServerLogs erkundigen.

                        Kommentar

                        Info zu diesem Forenarchiv:
                        Mit Release von 1.5.7 wurde die deutsche Zen Cart Version auf eine reine DIY-Lösung umgestellt.
                        Für einen Support via Forum stehen keine personellen und zeitlichen Ressourcen mehr zur Verfügung.
                        Dieses Supportforum bleibt im Nur-Lesen-Modus als Wissensarchiv noch online verfügbar.
                        PM Funktionalität, Registrierung und Posten neuer Beiträge sind deaktiviert.
                        Zugriff auf Anhänge in den Postings ist auch ohne Registrierung/Einloggen möglich.
                        FAQ und Downloadbereich des Forums wurden in die neue umfangreiche Knowledgebase auf der zen-cart-pro.at Website übernommen.

                        Das Development der deutschen Zen Cart Version geht wie bisher auf Github weiter.
                        Wir werden auch weiterhin neue Versionen bereitstellen und die Onlinedokumentation/Knowledgebase aktualisieren.
                        Fehler in der Software können auf Github als Issues gemeldet werden.
                        Follow us
                        aktuelle version
                        Zen Cart 1.5.7g deutsch
                        vom 12.12.2023
                        [Download]
                        Lädt...
                        X