至少这似乎正在发生.我正在尝试为网站创建一个搜索栏,它确实有效,除非它没有读取只会撤回已批准内容的where子句.你可以看出为什么会出现这个问题.
无论如何,这就是我在我的模型中所拥有的
$match = $this->input->post('search');
$this->db->where('approved', 'y');
$this->db->like('description', $match);
$this->db->or_like('title', $match);
$this->db->or_like('body', $match);
$this->db->or_like('author', $match);
$query = $this->db->get('story_tbl');
return $query->result();
Run Code Online (Sandbox Code Playgroud)
当我打印出查询时,似乎它看到了where子句,但是当我把这些东西拿回来时,它会拉出未经批准或未经审查的内容.
这是我打印的查询
SELECT * FROM (`story_tbl`) WHERE `approved` = 'y' AND `description` LIKE
'%another%' OR `title` LIKE '%another%' OR `body` LIKE '%another%' OR
`author` LIKE '%another%'
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用callback_column函数更改列值.
$crud = new grocery_CRUD();
$crud -> set_table('booking');
//$crud->set_relation('room_id','rooms','name');
$crud->callback_column('room_id',array($this,'_visitor_details_popup'));
Run Code Online (Sandbox Code Playgroud)
此代码运行良好(_visitor_details_popup函数返回值room_id)
$crud = new grocery_CRUD();
$crud -> set_table('booking');
$crud->set_relation('room_id','rooms','name');
$crud->callback_column('room_id',array($this,'_visitor_details_popup'));
Run Code Online (Sandbox Code Playgroud)
这段代码效果不好(room_id不改变)
public function _visitor_details_popup($value, $row)
{
$visitor_details=explode(',',$value);
return '<a href="#">Name'.$visitor_details[1].'<a>'.'<div class="popup_content">Address'.$visitor_details[2].'Email'.$visitor_details[3].'</div>;
}
Run Code Online (Sandbox Code Playgroud)
这是杂货店的臭虫?任何棘手的解决方法?
我在我的视图页面中使用了Codeignter
方法1:views/show.php
echo @html_entity_decode("?", ENT_COMPAT | ENT_HTML401, "UTF-8");
Run Code Online (Sandbox Code Playgroud)
Html输出
?
Run Code Online (Sandbox Code Playgroud)
这很好用.
但.
方法2:在config/constants.php中,我为阿拉伯语单词定义了常量值,如下所示:
define('ARABIC_WORD', '?');
Run Code Online (Sandbox Code Playgroud)
在我的视图页面中,views/show.php
echo @html_entity_decode(ARABIC_WORD, ENT_COMPAT | ENT_HTML401, "UTF-8");
Run Code Online (Sandbox Code Playgroud)
Html输出:
?
Run Code Online (Sandbox Code Playgroud)
我需要为第二个选项(方法2)工作,以便我可以定义值.请有人在这帮助我,让我知道我犯了什么错误,如果有任何新的建议.
所以我使用php构建了一个向导,其中一个表单要求用户上传图像.
我已经构建了所有内容,唯一的问题是我必须能够在我的一个if语句中说,如果表单是使用jquery的submit()方法提交的.
所以这是在用户选择图像后在jquery中提交表单的代码.
var initUpload = function(){
$('.filebutton').change(function(e){
$("form").submit();
});
};
Run Code Online (Sandbox Code Playgroud)
这就是我的if语句的样子.
if($this->input->post('back')){
//Tells me that the user clicked on the back button, and to go back 1 step in the wizard.
}else if(???){
//This is where I would like to say: if form was submitted with jquery.
}else{
//Else the user just clicked "next" and to continue normally.
}
Run Code Online (Sandbox Code Playgroud)
我所知道的:
使用$this->input->post('back')我可以使用带有valueBACK 的按钮检查表单是否已提交.我var_dumped $this->input->post()只是返回输入字段的值.
我想加入表格列出两类小说和浪漫的书籍.如何使用WHERE IN子句进行JOIN(甚至可能?抱歉,noob在这里)
这是我被困在的地方:
$categories = array(10,12);
$query = select()->from('books');
$query->join('genre_map','genre_map.gid IN ('.implode(",", $categories).')');
Run Code Online (Sandbox Code Playgroud)
Jn Table genre_map:bookid,genre_id
任何SQL Query/CodeIgniter帮助都将非常感激.
遇到Codeigniter问题.我试图从mysql中获取产品的价值.mysql表包含一个名为的字段cost_price.我正在尝试使用产品ID获取单个产品的结果.这是我正在使用的代码,
$query = $this->db->query('SELECT * FROM items WHERE id="$id"');
$row = $query->result();
echo $row['cost_price'];
Run Code Online (Sandbox Code Playgroud)
但什么都没发生!我的代码有什么问题?
我尝试了一些错误的代码来检查数据库是否响应,但似乎数据库工作正常.无法理解为什么我的查询找不到任何结果!
我已经尝试了一切,我接近放弃了.请帮忙.
我一直试图摆脱codeigniter中的index.php并完成了谷歌提供的每个代码以放入.htaccess.
目前,我有这个.
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
Run Code Online (Sandbox Code Playgroud)
这确实有效,但每次我提交表格时,我都会收到这个令人抓狂的错误的302错误.

我控制器中的一个提交功能......其他形式的其他功能基本相同.我已经尝试了刷新和重定向的定位方法,既没有改变任何东西.我不相信这是问题所在.
public function submitStory(){
if (empty($this->user)) {
redirect('/home/');
}else{
$this->story_model->writeStory();
redirect('story/newChapterView/');
}
Run Code Online (Sandbox Code Playgroud)
}
我的模型只是插入数据库
public function writeStory(){
$this->title = strip_tags($this->input->post('wTitle'));
$this->date = time();
$this->author = strip_tags($this->input->post('wAuthor'));
$this->type = strip_tags($this->input->post('wType'));
$this->db->insert('story_tbl', $this);
}
Run Code Online (Sandbox Code Playgroud)
我的一个表单,它们几乎只是一个标准的codeigniter表单
<?=form_open('story/submitStory', array('id' => 'newStory'));?>
<p class="textBox"><label>Story Title: </label><input id="storyTitle" type="text" name="wTitle" autocomplete="off" /></p>
<p><label>Complete:</label><select class="drop" …Run Code Online (Sandbox Code Playgroud) 我已经设置了我的控制器和我的联系表单.但是当我点击我的联系页面上的"提交"时,我没有收到任何错误,但是我没有收到任何电子邮件.任何人都可以帮我弄清楚为什么我实际上没有收到电子邮件?我感谢任何帮助.这是我的控制器代码:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Home extends CI_Controller {
public function index()
{
$this->template->build('home');
}
public function email() {
$name = $this->input->post('name');
$email = $this->input->post('email');
$phone_number = $this->input->post('phone_number');
$message = $this->input->post('message');
$this->load->library('email');
$this->email->from($email, 'Your Name');
$this->email->to('anish@develop.io');
$this->email->cc('another@another-example.com');
$this->email->bcc('them@their-example.com');
$this->email->subject('Email Test');
$this->email->message(
'My name is'.$name.', Im testing this email class. My email is '.$email. '. My Phone number is '.$phone_number.
' This is my message '.$message. ' Thanks!!'
);
$this->email->send();
echo $this->email->print_debugger();
$this->template->build('home');
} …Run Code Online (Sandbox Code Playgroud) 我从ftp下载了一个网站.该网站由CodeIgniter制作.我的问题是它似乎不适用于localhost.
config.php中的基本URL:
$config['base_url'] = 'http://sample_localhost/mysite/';
Run Code Online (Sandbox Code Playgroud)
database.php中的设置:
$db['default']['hostname'] = 'sample_localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = 'admin';
$db['default']['database'] = 'my_database';
Run Code Online (Sandbox Code Playgroud)
很感谢任何形式的帮助.提前致谢!
我有一张这样的桌子
name|subjects|location
......................
BUET|CSE|Dhaka
BUET|EEE|Dhaka
RUET|CE |Rajshahi
RU |CE |Rajshahi
Run Code Online (Sandbox Code Playgroud)
这里所有的行都是不同的.如果我使用的话
$this->db->select('*') and $this->db->distinct()
Run Code Online (Sandbox Code Playgroud)
它会选择BUET的所有行,但我只想这样
name|subjects|location
......................
BUET|CSE|Dhaka
RUET|CE |Rajshahi
RU |CE |Rajshahi
Run Code Online (Sandbox Code Playgroud)
这意味着只有第一列必须是不同的并且像往常一样选择所有列.如果我使用$ this-> db-> select('name')和,它将起作用$this->db->distinct().那么其他列会是什么?
因为我的原始表有很多列,所以我想使用$this->db->select('*').我认为 $this->db->distinct()不会将任何列作为参数.它根据选择来区分结果.我怎样才能做到这一点?
codeigniter ×10
php ×7
mysql ×2
contact-form ×1
email ×1
grocery-crud ×1
jquery ×1
sql ×1
where-clause ×1