PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (13): В начало « ... 5 6 7 8 9 [10] 11 12 13 »

> Найдено сообщений: 192
imedia Отправлено: 05 Ноября, 2015 - 21:59:51 • Тема: как с помощью роутера без header перейти к экшену и передать параметр • Форум: Вопросы новичков

Ответов: 0
Просмотров: 75
Есть роутер

PHP:
скопировать код в буфер обмена
  1.  
  2. $router = new Router(GET_HTTP_HOST());
  3. $router->add('home', '/', 'AppController:homeAction');
  4. $route = new MatchedRoute('AppController:userAction');
  5. list($class, $action) = explode(':', $route->getController(), 2);
  6. call_user_func_array(array(new $class($router), $action), $route->getParameters());
  7.  

Вот эта строка
PHP:
скопировать код в буфер обмена
  1. $route = new MatchedRoute('AppController:userAction');

переводит к экшену определенного контроллера
Что здесь лишнее для того чтобы перейти к экшену и как передать 2 параметра не используя header и чего не хватает?
И можно ли не повторять в контроллере этот роутер а поднять его из индекса?
imedia Отправлено: 05 Ноября, 2015 - 17:56:08 • Тема: Почему может не переходить по header • Форум: Вопросы новичков

Ответов: 1
Просмотров: 122
Выводит UserId а по хэдеру не переходит

PHP:
скопировать код в буфер обмена
  1.  
  2.                 function login() {
  3.                   $username = $_POST['username'];
  4.           $password = $_POST['password'];
  5.                   $data['error']=array();
  6.           $passwordx = sha1($password);
  7.           /* $query = $this->db->query("SELECT * FROM users WHERE username='$username' AND password='$passwordx'"); */
  8.                   $name=array(':first'=>$username,':second'=>$passwordx);
  9.                   $query[]=parent::get_obj_and('*','users','username','password',$name);
  10.                    if (count($query)==1)  {
  11.                           $userID = $query[0]['id'];
  12.                           $username = $query[0]['username'];
  13.                           $data['full_name'] = $query[0]['full_name'];
  14.                           $data['pass'] = $password;
  15.                           $data['email'] = $query[0]['email'];
  16.                           $_SESSION['useID']=$userID;
  17.                           $data['title']="User Profile";
  18.                           $data['user_name']= $username;
  19.                           print($userID);
  20.                           header('http://leraloveyou.net/user/'.$userID);
  21.  
  22.           }
  23.           else {
  24.                   $query_name = $this->db->query("SELECT * FROM users WHERE username='$username'");
  25.                   if ($query_name->num_rows() !== 1){
  26.                   $data['error']['username']='Login is incorrect';
  27.                   }
  28.                   $query_pass = $this->db->query("SELECT * FROM users WHERE password='$password'");
  29.                   if ($query_pass->num_rows() !== 1){
  30.                   $data['error']['pass']='Password is incorrect';
  31.                   }
  32.               $data['error']['text']='The username or password not correct. Please, try again';
  33.               $data['title']="Index";
  34.               $path='/tests/forge/';
  35.                           $path_to_page='/tests/forge/action';
  36.                           $path_to_layout='/tests/forge/layouts';
  37.                           $this->load->view($path_to_layout.'/login_error_view',$data);
  38.                           $this->display_lib->template_tests($path_to_page,$data,$path);
  39.           }
  40.  
  41.         }
  42.  
imedia Отправлено: 05 Ноября, 2015 - 13:20:29 • Тема: Ajax json не находит файл лежащий в корне • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1038
IllusionMHНе получаю объект хотя ответ 200 Responce Loading....

а в алерте нет ничего, объект не приходит

просто Loading...
imedia Отправлено: 04 Ноября, 2015 - 22:37:30 • Тема: Ajax json не находит файл лежащий в корне • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1038
SAD пишет:
возможно, это должен быть не index метод, а другой

то же самое почему то к методу достучатся не могу, есть соображения?, я не даром htaccess привел в начале
imedia Отправлено: 04 Ноября, 2015 - 22:14:33 • Тема: Ajax json не находит файл лежащий в корне • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1038
так и сделал

CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. ar dat=1;
  3. $.ajax({
  4.         type: "POST",
  5.         dataType: "json",
  6.         url: "/scripts/get_lang.php/index",
  7.         data: dat,
  8.         success: function(data) {
  9.         alert(data)
  10.         }
  11.         })
  12.  

/scripts/get_lang.php
PHP:
скопировать код в буфер обмена
  1.  
  2. require ('Main.php');
  3.  
  4. class Get_lang extends Main{
  5.  
  6. public function index(){
  7. $options=array('1'=>'YES');
  8. echo json_encode($options);
  9.  
  10. }
  11. }
  12.  


Не получаю объект хотя ответ 200 Responce Loading....
imedia Отправлено: 04 Ноября, 2015 - 21:39:14 • Тема: Ajax json не находит файл лежащий в корне • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1038
SAD
да, прозевал, но теперь вопрос в другом
Могу ли я обратится к класу php аяксом

к примеру я хочу сделать так
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. var dat=1;
  3. $.ajax({
  4.         type: "POST",
  5.         dataType: "json",
  6.         url: "/scripts/get_lang.php/",
  7.         data: dat,
  8.         success: function(data) {
  9.         alert(data)
  10.         }
  11.         })
  12.  

get_lang.php
PHP:
скопировать код в буфер обмена
  1.  
  2. class Get_lang extends Main{
  3. $options=array('1'=>'YES');
  4. echo json_encode($options);
  5. }
  6.  


Так ответ 200 но объекта нет уже в success
imedia Отправлено: 04 Ноября, 2015 - 21:01:37 • Тема: Ajax json не находит файл лежащий в корне • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1038
ReferenceError: data is not defined

n.event.dispatch()
n.event.add/r.handle()

ОНО?
(Добавление)
http://ajax[dot]googleapis[dot]com/ajax/[dot][dot][dot][dot]3/jquery[dot]min[dot]js
304 not modified

есть еще и такое
imedia Отправлено: 04 Ноября, 2015 - 20:45:22 • Тема: Ajax json не находит файл лежащий в корне • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1038
SAD А что data, мне не важно что примет функция, главное что она возвращает json
imedia Отправлено: 04 Ноября, 2015 - 19:34:57 • Тема: Ajax json не находит файл лежащий в корне • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1038
Viper пишет:
imedia
1. dataType: "json" означает что ожидается json-формат данных, но
2.
вернет вам строку, а не объект/массив json.

$.ajax в результате вам ничего не возвращает, т.к. для обработки ошибок вы не указали ни одного обработчика.

PS! Читайте матчасть, а не пишите отсебятину. И научитесь пользоваться консолью браузера!


да но даже если массив в json я получаю ту же ошибку
imedia Отправлено: 04 Ноября, 2015 - 16:32:26 • Тема: Ajax json не находит файл лежащий в корне • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1038
Faraon-san
все нормально выводит YES

ReferenceError: data is not defined

n.event.dispatch()
n.event.add/r.handle()
imedia Отправлено: 04 Ноября, 2015 - 14:27:09 • Тема: Ajax json не находит файл лежащий в корне • Форум: Вопросы новичков

Ответов: 20
Просмотров: 1038
Добрый день у меня аякс не находит пхп файл думаю так, дело в том что у меня роутер установлен и все через индекс фурычит, может надо что то в htaccess менять

CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. $.ajax({
  3.         type: "POST",
  4.         dataType: "json",
  5.         url: "/scripts/get_lang.php",
  6.         data: data,
  7.         success: function(data) {
  8.         alert(data)
  9.         }
  10.         })
  11.  


Файл в папке лежит

PHP:
скопировать код в буфер обмена
  1.  
  2. function index(){
  3. $options='YES';
  4. echo json_encode($options);
  5. }
  6.  

.htaccess
PHP:
скопировать код в буфер обмена
  1.  
  2. RewriteEngine on
  3. RewriteCond %{REQUEST_FILENAME} !-d
  4. RewriteCond %{REQUEST_FILENAME} !-f
  5. RewriteRule ^ index.php [L]
  6. php_value display_errors 1
  7. php_value display_startup_errors 1
  8. php_value error_reporting E_ALL
  9.  
imedia Отправлено: 03 Ноября, 2015 - 15:23:59 • Тема: Возникает ошибка при выполнении update PDO • Форум: Вопросы новичков

Ответов: 2
Просмотров: 154
спасибо, понял
imedia Отправлено: 03 Ноября, 2015 - 12:53:39 • Тема: Возникает ошибка при выполнении update PDO • Форум: Вопросы новичков

Ответов: 2
Просмотров: 154
Возникает следующая ошибка
SQLSTATE[HY093]: Invalid parameter number: mixed named and positional parameters#0 /var/www/clients/client1/web28/web/protected/Main.php(72): PDOStatement->execute(Array) #1 /var/www/clients/client1/web28/web/protected/models/User.php(59): Main->update_obj('users', 'activation_code', Array, Array, '0096deb29bf3199...') #2 /var/www/clients/client1/web28/web/protected/UsersController.php(82): User->confirm_registration('0096deb29bf3199...') #3 [internal function]: UsersController->activate('0096deb29bf3199...') #4 /var/www/clients/client1/web28/web/index.php(26): call_user_func_array(Array, Array) #5 {main}

Что здесь не так, вродебы все по мануалу
PHP:
скопировать код в буфер обмена
  1.  
  2. $table_name='users';
  3. $obj_id='activation_code';
  4. $data = array(
  5.   'activated' => 1
  6.   );
  7.      foreach($data as $key=>$val){
  8.      $fields[]=$key;
  9.      }
  10.      $obj=$activation_code;
  11. $result =parent::update_obj($table_name,$obj_id,$fields,$data,$obj);
  12.  
  13. function pdoSet($fields, &$values, $source = array()) {
  14.   $set = '';
  15.   $values = array();
  16.   if (!$source) $source = &$_POST;
  17.   foreach ($fields as $field) {
  18.   if (isset($source[$field])) {
  19.   $set.="`".str_replace("`","``",$field)."`". "=:$field, ";
  20.   $values[$field] = $source[$field];
  21.   }
  22.   }
  23.   return substr($set, 0, -2);
  24. }
  25.  
  26. function update_obj($table_name,$obj_id,$fields,$data,$obj){
  27. print('update_obj');
  28. $sql = "UPDATE ".$table_name." SET ".$this->pdoSet($fields,$values,$data)." WHERE ".$obj_id." = ?";
  29. $stm = $this->conn()->prepare($sql);
  30. $stm->execute(array($obj));
  31. }
  32.  
imedia Отправлено: 01 Ноября, 2015 - 19:38:43 • Тема: Как обратиться к переменной в другой функции • Форум: Вопросы новичков

Ответов: 4
Просмотров: 223
Viperда винегред сделаю просто parent::conn()->query()
imedia Отправлено: 01 Ноября, 2015 - 19:31:39 • Тема: PDO не записывается в базу инфа • Форум: Вопросы новичков

Ответов: 2
Просмотров: 294
Почему не записывается в базу информация
? что не так вроде бы все по мануалу
PHP:
скопировать код в буфер обмена
  1.  
  2. function insert($table_name,$fields,$data){
  3.  
  4. $data = array(
  5.   'username' => $username,
  6.   'password' => sha1($password),
  7.   'full_name' => $full_name,
  8.         'email' => $email,
  9.   'activation_code' => $activation_code,
  10.   'created_at' =>  $created_date,
  11.         'qnt_pass'=>iconv_strlen($password,'UTF-8'),
  12.   );
  13.        foreach($data as $key=>$val){
  14.        $fields[]=$key;
  15.        }
  16. $sql = "INSERT INTO ".$table_name." SET ".parent::pdoSet($fields,$values,$data);
  17. $stm = parent::conn()->prepare($sql);
  18. $stm->execute($values);
  19.  
  20. }
  21.  

расширеный Main.php
PHP:
скопировать код в буфер обмена
  1.  
  2. function conn() { // подключение к БД
  3.   $dsn = "mysql:host=lop.com;dbname=c1lop";
  4.   $user='c1lop';
  5.   $pass='sun';
  6. $opt = array(
  7.   PDO::ATTR_ERRMODE  => PDO::ERRMODE_EXCEPTION,
  8.   PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
  9. );
  10. $pdo = new PDO($dsn, $user, $pass, $opt);
  11.  
  12. }
  13.  
  14. function pdoSet($fields, &$values, $source = array()) {
  15.   $set = '';
  16.   $values = array();
  17.   if (!$source) $source = &$_POST;
  18.   foreach ($fields as $field) {
  19.   if (isset($source[$field])) {
  20.   $set.="`".str_replace("`","``",$field)."`". "=:$field, ";
  21.   $values[$field] = $source[$field];
  22.   }
  23.   }
  24.   return substr($set, 0, -2);
  25. }
  26.  


Fatal error: Call to a member function prepare() on null in /var/www/clients/client1/web28/w eb/protected/models/User.php on line 16ь
(Добавление)
http://phpfaq[dot]ru/pdo#insert

Страниц (13): В начало « ... 5 6 7 8 9 [10] 11 12 13 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB