Pagina 1 di 1

Non riesco a ottenere l'indirizzo email del cliente

Inviato: 08/06/2012, 14:10
da Monica65
Ciao a tutti,
sono nuova del forum e anche "sperimentale" nella gestione di questo sito di e-commerce con OS Commerce. In pratica sto remando!!!! :)
Ho notato che nel registro azioni sembra ci siamo dei contatti che non sono mai arrivati alla mail dell'Administrator, credo sia il form dei contatti che però non recapita i messaggi. Questi utenti non si sono registrati come clienti e quindi non riesco a contattarle io nemmeno volendo. Che posso fare?
Questo è quello che c'è scritto nella pagina "contact_us.php" che ho sul sito

<?php
/*
$Id$

osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com

Copyright (c) 2010 osCommerce

Released under the GNU General Public License
*/

class ar_contact_us {
var $code = 'ar_contact_us';
var $title;
var $description;
var $sort_order = 0;
var $minutes = 15;
var $identifier;

function ar_contact_us() {
$this->title = MODULE_ACTION_RECORDER_CONTACT_US_TITLE;
$this->description = MODULE_ACTION_RECORDER_CONTACT_US_DESCRIPTION;

if ($this->check()) {
$this->minutes = (int)MODULE_ACTION_RECORDER_CONTACT_US_EMAIL_MINUTES;
}
}

function setIdentifier() {
$this->identifier = tep_get_ip_address();
}

function canPerform($user_id, $user_name) {
$check_query = tep_db_query("select date_added from " . TABLE_ACTION_RECORDER . " where module = '" . tep_db_input($this->code) . "' and (" . (!empty($user_id) ? "user_id = '" . (int)$user_id . "' or " : "") . " identifier = '" . tep_db_input($this->identifier) . "') and date_added >= date_sub(now(), interval " . (int)$this->minutes . " minute) and success = 1 order by date_added desc limit 1");
if (tep_db_num_rows($check_query)) {
return false;
} else {
return true;
}
}

function expireEntries() {
global $db_link;

tep_db_query("delete from " . TABLE_ACTION_RECORDER . " where module = '" . $this->code . "' and date_added < date_sub(now(), interval " . (int)$this->minutes . " minute)");

return mysql_affected_rows($db_link);
}

function check() {
return defined('MODULE_ACTION_RECORDER_CONTACT_US_EMAIL_MINUTES');
}

function install() {
tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) VALUES ('Minimum Minutes Per E-Mail', 'MODULE_ACTION_RECORDER_CONTACT_US_EMAIL_MINUTES', '15', 'Minimum number of minutes to allow 1 e-mail to be sent (eg, 15 for 1 e-mail every 15 minutes)', '6', '0', now())");
}

function remove() {
tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')");
}

function keys() {
return array('MODULE_ACTION_RECORDER_CONTACT_US_EMAIL_MINUTES');
}
}
?>

Grazie a tutti in anticipo per l'aiuto ... ma non lasciatemi senza risposta!!! :wink:
Monica

Re: Non riesco a ottenere l'indirizzo email del cliente

Inviato: 11/06/2012, 17:41
da maury2ma
non riconosco il file...
che versione stai usando di oscommerce ?
che percorso ha questo file ?

Re: Non riesco a ottenere l'indirizzo email del cliente

Inviato: 12/06/2012, 13:07
da Monica65
Versione installata: osCommerce Online Merchant v2.3.1
c'è un messaggio che dice "Sei allineato con l'ultima versione di osCommerce Online Merchant"

Magari ho sbagliato ad aprire la cartella??
Il file contatti clienti in che cartella dovrebbe essere?
Ciao Monica

Re: Non riesco a ottenere l'indirizzo email del cliente

Inviato: 12/06/2012, 23:49
da maury2ma

Codice: Seleziona tutto

<?php
/*
  $Id$

  osCommerce, Open Source E-Commerce Solutions
  http://www.oscommerce.com

  Copyright (c) 2010 osCommerce

  Released under the GNU General Public License
*/

  require('includes/application_top.php');

  require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_CONTACT_US);

  if (isset($HTTP_GET_VARS['action']) && ($HTTP_GET_VARS['action'] == 'send') && isset($HTTP_POST_VARS['formid']) && ($HTTP_POST_VARS['formid'] == $sessiontoken)) {
    $error = false;

    $name = tep_db_prepare_input($HTTP_POST_VARS['name']);
    $email_address = tep_db_prepare_input($HTTP_POST_VARS['email']);
    $enquiry = tep_db_prepare_input($HTTP_POST_VARS['enquiry']);

    if (!tep_validate_email($email_address)) {
      $error = true;

      $messageStack->add('contact', ENTRY_EMAIL_ADDRESS_CHECK_ERROR);
    }

    $actionRecorder = new actionRecorder('ar_contact_us', (tep_session_is_registered('customer_id') ? $customer_id : null), $name);
    if (!$actionRecorder->canPerform()) {
      $error = true;

      $actionRecorder->record(false);

      $messageStack->add('contact', sprintf(ERROR_ACTION_RECORDER, (defined('MODULE_ACTION_RECORDER_CONTACT_US_EMAIL_MINUTES') ? (int)MODULE_ACTION_RECORDER_CONTACT_US_EMAIL_MINUTES : 15)));
    }

    if ($error == false) {
      tep_mail(STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS, EMAIL_SUBJECT, $enquiry, $name, $email_address);

      $actionRecorder->record();

      tep_redirect(tep_href_link(FILENAME_CONTACT_US, 'action=success'));
    }
  }

  $breadcrumb->add(NAVBAR_TITLE, tep_href_link(FILENAME_CONTACT_US));

  require(DIR_WS_INCLUDES . 'template_top.php');
?>

<h1><?php echo HEADING_TITLE; ?></h1>

<?php
  if ($messageStack->size('contact') > 0) {
    echo $messageStack->output('contact');
  }

  if (isset($HTTP_GET_VARS['action']) && ($HTTP_GET_VARS['action'] == 'success')) {
?>

<div class="contentContainer">
  <div class="contentText">
    <?php echo TEXT_SUCCESS; ?>
  </div>

  <div style="float: right;">
    <?php echo tep_draw_button(IMAGE_BUTTON_CONTINUE, 'triangle-1-e', tep_href_link(FILENAME_DEFAULT)); ?>
  </div>
</div>

<?php
  } else {
?>

<?php echo tep_draw_form('contact_us', tep_href_link(FILENAME_CONTACT_US, 'action=send'), 'post', '', true); ?>

<div class="contentContainer">
  <div class="contentText">
    <table border="0" width="100%" cellspacing="0" cellpadding="2">
      <tr>
        <td class="fieldKey"><?php echo ENTRY_NAME; ?></td>
        <td class="fieldValue"><?php echo tep_draw_input_field('name'); ?></td>
      </tr>
      <tr>
        <td class="fieldKey"><?php echo ENTRY_EMAIL; ?></td>
        <td class="fieldValue"><?php echo tep_draw_input_field('email'); ?></td>
      </tr>
      <tr>
        <td class="fieldKey" valign="top"><?php echo ENTRY_ENQUIRY; ?></td>
        <td class="fieldValue"><?php echo tep_draw_textarea_field('enquiry', 'soft', 50, 15); ?></td>
      </tr>
    </table>
  </div>

  <div class="buttonSet">
    <span class="buttonAction"><?php echo tep_draw_button(IMAGE_BUTTON_CONTINUE, 'triangle-1-e', null, 'primary'); ?></span>
  </div>
</div>

</form>

<?php
  }

  require(DIR_WS_INCLUDES . 'template_bottom.php');
  require(DIR_WS_INCLUDES . 'application_bottom.php');
?>

Re: Non riesco a ottenere l'indirizzo email del cliente

Inviato: 12/06/2012, 23:50
da maury2ma
quello è il file catalog/contact_us.php
originale del pacchetto 2.3.1

Re: Non riesco a ottenere l'indirizzo email del cliente

Inviato: 19/06/2012, 13:59
da Monica65
Abbi pazienza .... ma sono impedita lo ammetto!!!
Il percorso che hai indicato tu non lo trovo :-(
catalog/contact_us.php in che altra cartella è contenuto???
Grazie Monica

Re: Non riesco a ottenere l'indirizzo email del cliente

Inviato: 19/06/2012, 14:59
da maury2ma
/catalog/ è solitamente il nome della cartella dove c'è dentro oscommerce
di solito si mette il sito in www.sito.xx/catalog
se il sito l'hai nella root (cioè nella cartella base) allora dovresti trovare il file contact_us.php nella root
www.nomesito.xxx/contact_us.php

Re: Non riesco a ottenere l'indirizzo email del cliente

Inviato: 22/06/2012, 14:03
da Monica65
Ok ho completamente sostituito la stringa con quella postata qui sul forum.

Continua a darmi lo stesso errore:
Errore Error: Una richiesta è già stata da te inviata, riprova tra 15 minutes.

:shock: :shock: :shock:

Cosa mi consigliate? Grazie ancora
Monica

Re: Non riesco a ottenere l'indirizzo email del cliente

Inviato: 22/06/2012, 16:23
da maury2ma
mi sa che devi farti vedere il sito da qualche persona "competente in oscommerce" per capire cosa non vada.
l'errore è strano e pure il fatto che la pagina era completamente diversa.

Re: Non riesco a ottenere l'indirizzo email del cliente

Inviato: 28/06/2012, 12:14
da Monica65
Ok grazie per la collaborazione :( :(