我想知道如何在Codeigniter中将cookie设置为HTTPOnly.我查看了文档,但没有看到如何设置此标志.
我还想设置cookie的安全标志,并在config.php文件中找到它:
$config['cookie_secure'] = TRUE;
Run Code Online (Sandbox Code Playgroud)
但是config.php中没有HTTPOnly选项.
如何将所有cookie设置为HTTPOnly?如果它是在框架中完成的,那么知道该代码在我自己的学习中的位置(以及默认值是什么)会很有帮助.
我使用json_encode将PHP数组转换为JSON.我检查了控制台,对象显示在数组中,但作为单个对象.
[ { Object { 03-13-2012="Jazz"}, Object { 07-19-2012="Pop"}, ... ]
Run Code Online (Sandbox Code Playgroud)
如何将此数组转换为一个对象,如下所示(在PHP或jQuery中):
Object { 03-13-2012="Jazz", 07-19-2012="Pop"}
Run Code Online (Sandbox Code Playgroud)
编辑:这是PHP数组的print_r的开头:
Array
(
[0] => Array
(
[03-13-2012] => Jazz
)
[1] => Array
(
[07-19-2012] => Pop
)
)
Run Code Online (Sandbox Code Playgroud) 我正在开发书签功能,用户点击jQueryui按钮,然后将某些信息发送到数据库.但我没有使用表单,因为没有用户输入的信息.
我从会话数据中提取用户的ID,我正在发送一个URI段(URL的一部分)
使用codeigniter/php.
我正在试图弄清楚要放在ajax/post函数的数据部分中的内容,因为没有输入表格/没有数据,以及如何处理控制器的"提交"部分.
调节器
function addBookmark(){
if ($this->input->post('submit')) {
$id = $this->session->userdata('id');
$bookmark = $this->uri->segment(3, 0);
$this->bookmarks_model->postBookmark($id, $bookmark);
}
}
Run Code Online (Sandbox Code Playgroud)
模型
function postBookmark() {
$data = array(
'user_id' => $user_id,
'bookmark_id' => $bookmark,
);
$this->db->insert('bookmarks', $data);
}
Run Code Online (Sandbox Code Playgroud)
HTML
<button class="somebutton">Add bookmark</button>
Run Code Online (Sandbox Code Playgroud)
jQuery的
$('.somebutton').click(function() {
$.ajax({
url: 'controller/addBookmark',
type: 'POST',
data: ???,
success: function (result) {
alert("Your bookmark has been saved");
}
});
});
Run Code Online (Sandbox Code Playgroud) 我想使用表单验证来要求密码具有BOTH字母和数字字符.这是我到目前为止所提出的:
$this->form_validation->set_rules('password', 'Password', 'required|matches[passconf]|min_length[8]|alpha_numeric');
Run Code Online (Sandbox Code Playgroud)
问题是"alpha_numeric"要求密码只包含字母或数字,它不需要两者.在这里寻求更强大的密码选项.
我正在使用codeigniter,并且大部分时间都使用活动记录进行查询(自动转义它们),但由于变量,此查询似乎并不适合它.所以我需要弄清楚如何手动转义查询.
Codeigniter文档建议以这种方式转义查询:
$sql = "INSERT INTO table (title) VALUES(".$this->db->escape($title).")";
Run Code Online (Sandbox Code Playgroud)
我的原始查询
$sql = "SELECT * FROM (`user_language`) WHERE `user_id` = '{$id}'";
Run Code Online (Sandbox Code Playgroud)
我的转义查询
$sql = "SELECT * FROM (`user_language`) WHERE `user_id` = '{$id}' VALUES(".$this->db->escape($user_language).")";
Run Code Online (Sandbox Code Playgroud)
但我无法正确使用语法.错误消息是:
我正在使用具有多个结果和远程数据源的jquery自动完成.我能够远程提取数据并选择多个结果.但结果列表不会根据输入的前2个字符进行更新,并且jQueryUI文档在此问题上很薄.
我已经研究过,在SO上找到了这个答案,并希望将它与我的其余功能集成,但它不会更新结果列表.独立地,SO答案可以正常工作,但是当与多个结果和远程数据源集成时则不行.
从自动完成/远程源/多功能(截断).这部分工作正常:
.autocomplete({
source: function( request, response ) {
$.ajax({
url: "/controller/myfunction",
dataType: "json",
data: request,
success: function(data){
if(data.response == 'true') {
response(data.message);
}
}
});
},
Run Code Online (Sandbox Code Playgroud)
在SO上可能的解决方案 :(独立工作正常,但不能使用jquery/remote/multiple代码):
var wordlist= [ "about", "above", "within", "without"];
$("#input1").autocomplete({
source: function(req, responseFn) {
var re = $.ui.autocomplete.escapeRegex(req.term);
var matcher = new RegExp( "^" + re, "i" );
var a = $.grep( wordlist, function(item,index){
return matcher.test(item);
});
responseFn( a );
}
});
Run Code Online (Sandbox Code Playgroud)
我需要将此解决方案与我的代码集成.
我正在开发CodeIgniter和MySQL中的应用程序.该应用包括用户个人资料; 我正在使用Tank Auth注册和验证用户.
我已经设置了几个用户,现在想要查看每个用户的个人资料.我需要知道:
1 - 如何将自定义会话数据添加到Tank Auth.我知道代码的外观(http://codeigniter.com/user_guide/libraries/sessions.html),但我不确定代码应该放在auth控制器的哪个位置,这是相当广泛的 - https:/ /github.com/ilkon/Tank-Auth/blob/master/application/controllers/auth.php.
2 - 如何将用户数据传递到视图.我已经设置了一个函数来检索用户数据(见下文)并希望将其传递给我的个人资料视图 - 我认为userdata(在代码中)将代表自定义会话数据,其中包括用户的id和用户名,其中一个我需要的URL.
3 - 网址我希望网址如下所示:http://example.com/users/3394或http://example.com/users/fooy_foo.我知道我需要对CI URI路由做一些事情,但我不确定如何将它与我从查询中获得的结果联系起来.
这是用户控制器的代码{
function index()
{
$id = $this->tank_auth->is_logged_in('id');
$this->db->where('id', $id);
$q = $this->db->get('user');
$data['userdata']=$q;
$this->load->view('user_view', $data);
}
}
Run Code Online (Sandbox Code Playgroud) 我正在研究推特类型的以下系统.我正在加入两个表,用户和关注者,以获取关注者表中的用户的名字和姓氏.然后我在追随者表上运行内部联接以捕获追随者和朋友的关系.我将结果显示为关注者(跟随你的人),跟随(跟随你的人)和朋友(相互跟随).
通过下面的查询,我只能显示想要看到他们的朋友的用户的名字.我想显示用户的FRIENDS,而不是用户自己的名字,但无法弄清楚如何让users表做双重任务 - 也就是说,告诉我用户的名字和名字他们的朋友,或者只是朋友的名字.
谢谢.
SELECT users.id, users.firstname, users.lastname, followers.follower_user_id, followers.followee_user_id
FROM users
JOIN followers ON followers.follower_user_id = users.id
INNER JOIN followers ff ON followers.followee_user_id = ff.follower_user_id AND followers.follower_user_id = ff.followee_user_id
Run Code Online (Sandbox Code Playgroud) 我从我的模型中获取数据数组,并使用php foreach语句在视图中显示它。我添加了另一层逻辑,以仅显示某些bookmark_id。
数据显示正常;但是由于某种原因,如果没有返回任何数据,则不会显示“ else”消息(附加到第一个if子句)。我需要弄清楚如何显示该消息。
<?php
if ($bookmark):
foreach($bookmark as $b): ?>
<?php if ($b->bookmark_id != 0) { ?>
<li><?php echo $bk->user_id; ?> <?php echo $bk->bookmark_name; ?></li>
<?php } ?>
<?php
endforeach;
else:
print "Your bookmark list is empty.";
endif;
?>
Run Code Online (Sandbox Code Playgroud) 我的网站左栏有一个菜单,当点击链接时,各个div显示/隐藏在网站的中间列.工作正常(下面的jquery和html代码).
问题是当div在中心列中加载时,jquery是动画的 - 右列滑到左列(隐藏中心),然后向后滑动到左侧.我试过调整了hide和fadeIn函数,但无法停止动画.
我想知道如何阻止这个动画发生.
JQUERY
$(document).ready(function() {
var hash = [removed].hash.substr(1);
var href = $('#nav li a').each(function(){
var href = $(this).attr('href');
if(hash==href.substr(0,href.length-5)){
var toLoad = hash+'.html #content';
$('#content').load(toLoad)
}
});
$('#nav li a').click(function(){
var toLoad = $(this).attr('href')+' #content';
$('#content').hide('fast',loadContent);
$('#load').remove();
$('#wrapper').append('<span id="load">LOADING...</span>');
$('#load').fadeIn('normal');
[removed].hash = $(this).attr('href').substr(0,$(this).attr('href').length-5);
function loadContent() {
$('#content').load(toLoad,'',showNewContent())
}
function showNewContent() {
$('#content').show('normal',hideLoader());
}
function hideLoader() {
$('#load').fadeOut('normal');
}
return false;
});
});
Run Code Online (Sandbox Code Playgroud)
HTML
<div id="leftcol">
<div id="usermenu">
<ul id="nav">
<li><a href="/option1">Option 1</a></li><br />
<li><a href="/option2">Option 2</a></li><br …Run Code Online (Sandbox Code Playgroud) 我想在mysql中存储一个愿望清单的书籍ID列表; 这是相关表格的样子:
User_Wishlists
user_id,list_title,list_id(PK)
愿望清单
list_id(FK),book_id(PK)
问题在于book_ID.大多数用户的列表上都会有多本书,但是表中的book1_id,book2_id等代表它们似乎很奇怪.有没有更好的方法在mysql中存储这些book_ID的列表?我需要能够检索并显示用户的愿望清单.
我想在mySQL select查询中将整数转换为文本.这是表格的样子:
Languages
--------
1,2,3
Run Code Online (Sandbox Code Playgroud)
我想将每个整数转换为一种语言(例如,1 =>英语,2 =>法语等)
我一直在阅读mySQL中的CONVERT和CAST函数,但它们似乎主要关注将各种数据类型转换为整数.而且我找不到任何与我存储数据的特定方式有关的事情(在一个字段中有多个数字).
如何在mySQL查询中将整数转换为文本?
UPDATE
这是我的mySQL查询:
SELECT u.id, ulp.userid, ulp.languages, ll.id, ll.language_detail
FROM users AS u
JOIN user_language_profile AS ulp ON (ulp.userid = u.id)
JOIN language_detail AS ll ON (ulp.languages = ll.id)
Run Code Online (Sandbox Code Playgroud)