目前我有两张桌子,products而且options.
产品包含
选项包含
样本数据可能是:
Products
id:1
标题:'test'
描述:'我的描述'
Options
id:1
product_id:1
sku:1001
title:'red'
id:2
product_id:1
sku:1002
title:'blue'
我需要显示每个项目,每个不同的选项.此刻,我选择行products并迭代它们,并为每个行选择适当的行options.然后我创建一个数组,类似于:
[product_title] = 'test';
[description] = 'my description';
[options][] = 1, 1001, 'red';
[options][] = 2, 1002, 'blue';
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法只使用sql(我使用codeigniter,并且理想情况下喜欢使用Active Record类)?
如何创建一个if语句来说明这样的话?基本上,如何使用URI类来确定任何段中是否存在值?
$segment = value_of_any_segment;
if($segment == 1{
do stuff
}
Run Code Online (Sandbox Code Playgroud)
我知道这是非常基础的,但我并不完全理解URI类......
如何开始使用Paypal与php codeigniter集成?我应该从哪里开始?有什么建议吗?
我现在正在编写一些软件,并且第一次使用CI.
默认控制器设置为我想要操作的第一个控制器'login'(控制器是login.php,视图是login.php.当提交表单时,它调用'authenticate'控制器.执行正常,进程正确的登录数据然后在这种情况下的"新闻页面"中执行重定向命令(之前没有任何输出到屏幕)到下一页.问题是重定向,永远不会到达'newspage'但是默认控制器再次运行.
无论我放什么...... http://yourname.xyz/anything ...(是的,我使用.htaccess删除index.php)任何东西都不会被调用,只是默认的控制器.我已将标准的'welcome.php'控制器和'welcome_message.php'留在文件夹中,甚至将http://yourname.xyz/welcome放入登录界面!
如何制作这样的工作网址: example.com/controller/method?id=1&cat=2
这是我几次发现自己的情况,我只想一劳永逸地清理它.
最好只是为了向您展示我在一些示例代码中需要做的事情.
我的控制器
function my_controller()
{
$id = $this->uri->segment(3);
$this->db->from('cue_sheets');
$this->db->where('id', $id);
$data['get_cue_sheets'] = $this->db->get();
$this->db->from('clips');
$this->db->where('sheet_id', ' CUE SHEET ID GOES IN HERE ??? ');
$data['get_clips'] = $this->db->get();
$this->load->view('show_sheets_and_clips', $data);
}
Run Code Online (Sandbox Code Playgroud)
我的看法
<?php if($get_cue_sheets->result_array()) { ?>
<?php foreach($get_cue_sheets->result_array() as $sheetRow): ?>
<h1><?php echo $sheetRow['sheet_name']; ?></h1>
<br/>
<?php if($get_clips->result_array()) { ?>
<ul>
<?php foreach($get_clips->result_array() as $clipRow): ?>
<li><?php echo $clipRow['clip_name']; ?></li>
<?php endforeach; ?>
</ul>
<?php } else { echo 'No Clips Found'; } ?>
<?php endforeach; ?>
<?php } …Run Code Online (Sandbox Code Playgroud) 注意:如果你只是一个jQuery开发人员,这篇文章中的一些内容可能看起来有点复杂(Base62编码等) - 实际上并非如此.虽然更多技术细节与问题相关,但核心是jQuery不会选择带有大写字母的东西.谢谢!
嗨伙计!
所以我有一个由Ajax生成的列表.单击列表标题时,将发送其ID,并且列表项将显示在其旁边.标准的东西.
由于我们使用的是auto_increment ID,因此我们不希望用户知道数据库中有多少提交内容.所以,我将它编码到Base62,然后再解码.[请注意,这是 - 或者应该与问题无关].
因此,在生成我的列表时,输出此代码.我们在jQuery旁边使用CodeIgniter PHP - 这是在数据库结果的循环中.$this->basecrypt->encode()是一个简单的CI库,用于将整数(ID)转换为Base62:
$('#title-<?php echo $this->basecrypt->encode($row->codeid); ?>').click(function() {
alert("clicked");
[...]
Run Code Online (Sandbox Code Playgroud)
然后,在页面的下方:
<div id="title-<?php echo $this->basecrypt->encode($row->codeid);?>" class="title">
Run Code Online (Sandbox Code Playgroud)
如您所见,这是在同一个循环中生成的 - 并查看输出的源代码显示,例如:
$('#title-1T').click[...] 然后 <div id="title-1T" [...]
所以,jQuery不应该有任何麻烦,对吧?在我们开始使用Base62-ID之前,一切正常.我相信jQuery在包含大写字母时不能/不会选择我们的ID.
现在请原谅我,如果我错了 - 相对来说,我对jQuery很新 - 但为了测试我的观点,我把我$this->basecrypt->encode()改成了Base36.之前,它正在使用0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
After,它正在使用0123456789abcdefghijklmnopqrstuvwxyz
没有大写字母,jQuery可以选择(并出于测试目的显示警报).
那我该怎么办?在Base36中继续使用数字和小写字母是否安全 - 如果是这样,那么最大整数大小是多少?如果没有,我可以做些什么来解决jQuery有问题的选择过程?
谢谢!
插口
编辑:下面是页面中的一些示例代码.
这是文件ajaxlist.php中返回的脚本的一部分 - 它是从Ajax调用的,并在页面加载后几秒钟出现.我在alert("clicked");开头附近添加,看看是否会出现 - 遗憾的是,它不会...... $(文档).ready(function(){
$('#title-<?php echo $this->basecrypt->encode($row->codeid); ?>').click(function() {
alert("clicked");
var form_data = {
id: <?php echo …Run Code Online (Sandbox Code Playgroud) 我正在使用CodeIgniter for PHP.谁能告诉我为什么这段代码不能正常工作?
<form action="/TestCodeIgniter/index.php/blog/comment_insert/<?php $this->uri->segment(3);?>" method="post">
Run Code Online (Sandbox Code Playgroud)
但是,这段代码工作正常: -
<?php echo form_open('blog/comment_insert/' . $this->uri->segment(3) ); ?>
Run Code Online (Sandbox Code Playgroud)
我非常确定segment(3)存在于我漂亮的网址中.那么,如果我使用普通的HTMl我的PHP代码是不是嵌入式的呢?
提前致谢 :)
我编写了一个函数来删除名为stack的表中的条目.我已经为其他表编写了类似的函数,它的工作原理.为此它不起作用,但也没有错误.我怎么能弄清楚什么是错的?
控制器条目:
function delete_tag($id)
{
$this->Mrestaurant->delete_tag($id);
echo 'deleted!';
}
Run Code Online (Sandbox Code Playgroud)
型号输入:
function delete_tag($id)
{
$this->db->where('id', '$id');
$this->db->delete('stack');
}
Run Code Online (Sandbox Code Playgroud)
数据库和我预装的所有:
$this->load->database();
$this->load->model('Mdb','',TRUE);
Run Code Online (Sandbox Code Playgroud)
每个其他数据库函数都像添加,更新,删除其他数据等工作...我很困惑,因为没有错误.而且我不知道如何找出错误的方法.
更新 这适用于模型
$this->db->delete('stack', array('id' => $id));
Run Code Online (Sandbox Code Playgroud)
知道为什么吗?
嘿,我正在尝试在我的CSS中设置变量,以便我可以允许订阅者自定义页面的颜色.我宁愿在静态服务器上拥有尽可能多的文件.
有这么好/简单的方法吗?我应该只有一个包含应用程序内部CSS文件中所有可编辑参数的CSS文件吗?
助步车
codeigniter ×10
php ×4
controller ×2
base62 ×1
controllers ×1
css ×1
default ×1
encryption ×1
foreach ×1
integration ×1
javascript ×1
jquery ×1
mysql ×1
paypal ×1
redirect ×1
sql ×1