отправить форму в codeigniter, перейдя на пустую страницу

Я отправляю форму с помощью помощников формы, и она переходит на пустую страницу, и когда я вижу источник представления, действие в источнике представления выглядит следующим образом: http://::1/ci1/login_validation Я не понимаю ::1 в нем, не должно ли быть localhost:8080/? Но если я использую простые теги формы, такие как обычный html, все работает нормально?

<?php   
echo form_open ('login_validation');    
echo form_input('email');
echo form_password('password');
echo form_submit('login_submit', 'login');  
echo  form_close(); 
?> 

Посмотреть источник

<form action="http://::1/ci1/login_validation" method="post" accept-charset="utf-8"> 

<p>Email:<input type="text" name="email" value="" /></p>

<p>Password:<input type="password" name="password" value="" /></p>

<p><input type="submit" name="login_submit" value="login" /></p>

</form> 

person mohsin    schedule 26.12.2015    source источник
comment
Покажите нам HTML, который вы получите от этих эхо-сигналов.   -  person azeós    schedule 27.12.2015
comment
Ваш код формы, который у вас есть в комментарии, должен быть отредактирован по вопросу, нажав кнопку редактирования под тегами.   -  person Mr. ED    schedule 27.12.2015


Ответы (2)


Я бы подумал, что это пара вещей.

Если в вашем действии формы указано http://::1/, оно не будет отправлено корректно, поскольку базовый URL-адрес пуст.

$config['base_url'] = '';

Пример заполнения базового URL:

$config['base_url'] = 'http://localhost/project_name/';

В версии codeigniter 3 не рекомендуется оставлять это поле пустым, потому что вы столкнетесь с этой проблемой.

Убедитесь, что ваши имена классов и файлов контроллеров и т. д. имеют первую букву в верхнем регистре.

Имя файла: Login_validation.php

Контроллер:

<?php

class Login_validation extends CI_Controller {

public function index() {

     // form submit controller code.

}

}

Вид

<?php   
echo form_open ('login_validation');    
echo form_input('email');
echo form_password('password');
echo form_submit('login_submit', 'login');  
echo form_close(); 
?>

Это распространенная ошибка людей, которые хотят проверить.

person Mr. ED    schedule 27.12.2015

Почему http://::1/??

Это означает, что ваш base_url() пуст.


Тогда откуда это http://::1/??

Когда URL-адрес вашего проекта пуст, CI определяет URL-адрес вашего проекта. Итак, этот http://::1/ знает путь к вашему проекту.


Как установить base_url()??

В config/config.php укажите $config['base_url'] = ''; URL-адрес проекта.


Хранить base_url() пустым, какой-либо вред??

Когда вы в местном все в порядке и прекрасно. Но когда вы размещаете это, просто добавьте к нему URL-адрес своего сайта.

$config['base_url'] = 'www.stackoverflow.com';
person Abdulla Nilam    schedule 27.12.2015