php - 消息:未定义的属性:使用 codeigniter 的 CI_Loader::$session

标签 php codeigniter session

<分区>

set_flashdata to my contact us page when users successfully send their message, i just added the flashdata that successfully send. When i tried to upload the files to the live server and tested it ive got this error Message: Undefined property: CI_Loader::$session it says that Fatal error: Call to a member function flashdata() on a non-object in /home/content/87/10599987/html/application/views/content/contact_us_content.php on line 18 can someone figured me out how to set this?? Here's my controller below

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
session_start();
class Contact_us extends CI_Controller {

    public function __construct(){
      parent::__construct();
      $this->load->library('javascript');
      $this->load->library('form_validation');
      $this->load->library('email');
    }

    public function index(){
      $this->data['title'] = 'Contact Us | Spring Rain Global Consultancy Inc';
      $this->data['active_menu'] = 'contacts';

      $this->load->view('pages/header', $this->data);
      $this->load->view('templates/contacts', $this->data);
      $this->load->view('pages/footer');
      $this->load->view('pages/footer_below');
    }

    public function send(){
      $this->form_validation->set_rules('name', 'Name', 'required');
      $this->form_validation->set_rules('email', 'Email', 'required|valid_email');
      $this->form_validation->set_rules('message', 'Message', 'required');

      if($this->form_validation->run() == FALSE){
        $this->data['title'] = 'Contact Us | Spring Rain Global Consultancy Inc';
        $this->data['active_menu'] = 'contacts';

        $this->load->view('pages/header', $this->data);
        $this->load->view('templates/contacts');
        $this->load->view('pages/footer');
        $this->load->view('pages/footer_below');

      }else{
        $name = $this->input->post('name');
        $email = $this->input->post('email');
        $msg = $this->input->post('message');

        $this->email->from('info@springrainglobal.com', 'SPRING RAIN GLOBAL CONSULTANCY INC');
        $this->email->to($email);
        $this->email->subject('CONTACT US! SPRING RAIN GLOBAL CONSULTANCY INC WEBSITE');
        $this->email->message("
              <!DOCTYPE html>
                <html>
                <head>
                <title>Spring Rain Global Consultancy Inc</title>
                </head>
                <body>
                <div style='width:500px; >
                  <div style='width:500px;'>
                    <a href='http://www.springrainglobal.com' target='_blank' rel='nofollow' >
                      <img alt='springrain logo' src='http://www.springrainglobal.com/images/461962_333397740048531_1893235327_o(1).jpg' width='180' height='122' />
                    </a>
                  </div>
                  <div style='margin-left:40px; margin-top:80px;'>
                    <h1>
                        Thank you for contacting us!... <br />
                        We will contact you within 48 hours.
                    </h1>
                    <br />
                    <br />
                    <br />
                    <br />
                    <br />
                    <br />
                    <p>
                      SpringRain Global Consultancy Inc Team

                    </p>
                  </div>
                </div>
                </body>
                </html>
                ");
        $this->email->send();

        $this->email->from('info@springrainglobal.com', $email);
        $list = array(
                  'macky_nyxz86@yahoo.com', 'info@springrainglobal.com'
                  );
        $this->email->to($list);
        $this->email->subject('CONTACT US! SPRING RAIN GLOBAL CONSULTANCY INC WEBSITE');
        $this->email->message("
              <!DOCTYPE html>
              <html>
              <head>
              <title>Spring Rain Global Consultancy Inc</title>
              </head>
              <body>
              <div style='width:500px; >
                <div style='width:500px;'>
                  <a href='http://www.springrainglobal.com' target='_blank' rel='nofollow' >
                    <img alt='springrain logo' src='http://www.springrainglobal.com/images/461962_333397740048531_1893235327_o(1).jpg' width='180' height='122' />
                  </a>

                </div>
                <div style='margin-left:40px; margin-top:80px;'>
                <p style='font-family:arial; font-size:13px;'><strong>Name :</strong>".$name." </p> 
                <p style='font-family:arial; font-size:13px;'><strong>Email :</strong>".$email." </p> 
                <p style='font-family:arial; font-size:13px;'><strong>Comments :</strong>".$msg." </p> 
                </div>
              </div>
              </body>
              </html>
            ");

       if($this->email->send()){
          $this->data['title'] = 'Contact Us | Spring Rain Global Consultancy Inc';
          $this->data['active_menu'] = 'contacts';

          $this->load->view('pages/header', $this->data);
          $this->session->set_flashdata('success', 1);
          $this->load->view('templates/contacts');
          $this->load->view('pages/footer');
          $this->load->view('pages/footer_below');
          #echo "Thank you for contacting us! You will receive a reply to your email shortly";
          #echo "<br />";
          #$this->sendNow();

       }else{
          //echo "failed";
          $this->data['title'] = 'Contact Us | Spring Rain Global Consultancy Inc';
          $this->data['active_menu'] = 'contacts';

          $this->load->view('pages/header', $this->data);
          $this->load->view('templates/contacts', $this->data);
          $this->load->view('pages/footer');
          $this->load->view('pages/footer_below');
       }

      }
    }

    private function sendNow(){
      echo "<a href=''>Contact Us</a>";
    }

}

我在 contact_us 类上方添加了 session_start() ,在 if($this->email->send) 上添加了 $this->session->set_flashdata 这是我的看法

    <article id="content">
            <section class="col1">
                <h2 class="pad_bot1">Feel Free To Contact Us!</h2>
                <p class="pad_top1 pad_bot1">Thank you for taking the time to click through the SpringRain Global Consultancy Inc Site. If you have additional questions that needs to be
answered, please feel free to fill out our contact form on the right side and we will get back to you as soon as we can. Please be sure to be specific and detailed
in your message. Or send us direct email at : <span style="color:green;">info@springrainglobal.com/ glenda@springrain.the.ph</span></p>
                <p class="pad_bot1"></p>

            </section>
            <section class="col2">
                <h2 class="pad_bot1">Send us a message!</h2>

        <?php if(!$this->session->flashdata('success')): ?>
          <form id="ContactForm" action="<?php echo base_url().'contact-us/send.html'?>" method="post">
            <div>
              <?php echo validation_errors('<div class="error">', '</div>')?>

              <div  class="wrapper margint20">
                <span>Your Name:</span>
                <div class="bg"><input type="text" id="name" name="name" class="input" autocomplete="off" value="<?php echo set_value('name');?>" placeholder="Your Name: " /></div>
              </div>
              <div  class="wrapper">
                <span>Your E-mail:</span>
                <div class="bg"><input type="text" id="email" name="email" class="input" autocomplete="off"  value="<?php echo set_value('email');?>" placeholder="email@example.com" /></div>
              </div>
              <div  class="textarea_box">
                <span>Your Message:</span>
                  <div class="bg"><textarea id="message" name="message" cols="1" rows="1" placeholder="Comments Here. . ." ><?php echo set_value('message');?></textarea></div>
              </div>
              <div style="margin-left:200px; margin-top:20px;">
                <input type="submit" class="button" name="submit" value="Send" />
                <input type="reset" class="button" value="Clear"  />
              </div>
            </div>
          </form>
        <?php else: ?>
          <div class="send_msg">
            <p>Thank you for contacting us! You will receive a reply to your email shortly</p>
          </div>
          <form id="ContactForm" action="<?php echo base_url().'contact-us/send.html'?>" method="post">
            <div>
              <?php echo validation_errors('<div class="error">', '</div>')?>

              <div  class="wrapper margint20">
                <span>Your Name:</span>
                <div class="bg"><input type="text" id="name" name="name" class="input" autocomplete="off" value="<?php echo set_value('name');?>" placeholder="Your Name: " /></div>
              </div>
              <div  class="wrapper">
                <span>Your E-mail:</span>
                <div class="bg"><input type="text" id="email" name="email" class="input" autocomplete="off"  value="<?php echo set_value('email');?>" placeholder="email@example.com" /></div>
              </div>
              <div  class="textarea_box">
                <span>Your Message:</span>
                  <div class="bg"><textarea id="message" name="message" cols="1" rows="1" placeholder="Comments Here. . ." ><?php echo set_value('message');?></textarea></div>
              </div>
              <div style="margin-left:200px; margin-top:20px;">
                <input type="submit" class="button" name="submit" value="Send" />
                <input type="reset" class="button" value="Clear"  />
              </div>
            </div>
          </form>
        <?php endif; ?>
            </section>
        </article>

实时服务器上的 session 有错误,有人可以帮我解决这个问题吗?非常感谢任何帮助。

最佳答案

试试这个:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
//session_start();
class Contact_us extends CI_Controller {

public function __construct(){
  parent::__construct();
  $this->load->library('javascript');
  $this->load->library('form_validation');
  $this->load->library('email');
  $this->load->library('session');
}

关于php - 消息:未定义的属性:使用 codeigniter 的 CI_Loader::$session,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22327746/

相关文章:

php - 在 View 中调用 View 无法正常工作

php - 禁用 SonataUserBundle sonata.user.admin.group 服务

mysql - Codeigniter Active Record JSON 对象中的值

Symfony 4 - 在连接时删除自己的用户帐户的良好做法

php - session ID 刷新后 Codeigniter 用户数据丢失 [CodeIgniter 3.0]

php - 如何根据 JSON API 响应创建自动建议?

php - 屏幕解决方案的正则表达式

mysql - MYSQL 连接和计数问题

php - 无法在mysql中保存增量值

php - 根据 id 变量删除帖子 - 不同的用户 session