我有以下观点,但set_value如果没有它默认为请选择,我该如何申请?
<label for="add_fields_type">Type: </label>
<select name="add_fields_type" id="add_fields_type">
<option value="">Please Select</option>
<option value="<?php echo set_value('input'); ?>">Input</option>
<option value="<?php echo set_value('textarea'); ?>">Text Area</option>
<option value="<?php echo set_value('radiobutton'); ?>">Radio Button</option>
<option value="<?php echo set_value('checkbox'); ?>">Check Box</option>
</select>
Run Code Online (Sandbox Code Playgroud)
更新:
视图:
<label for="add_fields_placeholder">Placeholder: </label>
<select name="add_fields_placeholder" id="add_fields_placeholder">
<option value="">Please Select</option>
<option value="<?php echo set_value('yes'<?php echo set_select('add_fields_placeholder','yes', ( !empty($placeholderType) && $placeholderType == "yes" ? TRUE : FALSE ));?>">Yes</option>
<option value="<?php echo set_value('no' <?php echo set_select('add_fields_placeholder','no', ( !empty($placeholderType) && $placeholderType == "no" ? TRUE : …Run Code Online (Sandbox Code Playgroud) 我在/ application/core中有一个控制器
/application/core/CMS_Controller.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
require APPPATH."third_party/MX/Controller.php";
class CMS_Controller extends MX_Controller {
public function __construct() {
parent::__construct();
}
public function show_something() {
echo "something shown";
}
}
Run Code Online (Sandbox Code Playgroud)
我在模块中有另一个控制器(/modules/my_module/controllers/controller.php),它从CMS_Controller扩展而来
/modules/my_module/controllers/controller.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Controller extends CMS_Controller {
public function index() {
$this->load->view('view');
}
}
Run Code Online (Sandbox Code Playgroud)
并且,在view.php(/modules/my_module/views/view.php)中我这样做: /modules/my_module/views/view.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
$ci =& get_instance();
echo $ci->show_something();
?>
Run Code Online (Sandbox Code Playgroud)
我收到这个错误:
致命错误:在第3行的/home/gofrendi/public_html/No-CMS/modules/my_module/views/view.php中调用未定义的方法CI :: …
目前我使用CodeIgniter进行常规查询,即:
$sql = "
SELECT *
FROM my_table
WHERE item_id > 1
";
$q = $this->db->query($sql);
Run Code Online (Sandbox Code Playgroud)
我已经开始研究ActiveRecord,它确实看起来不错,并且无论使用哪个数据库驱动程序都具有构建查询的优势 - 但是,我通常严格使用每个项目的单个数据库类型,所以这不是真正的对我有利.
我发现在我看来,常规查询(正如我在我的示例中所示)更易读,更容易维护,因此我目前正在考虑保持常规查询.
除了上面提到的原因,我应该选择哪个,以及原因是什么?
谢谢
好吧,我有一个表,由一些开源软件输出,但它不会以实际的表格格式输出,例如
<table>
<thead>
<td>Heading</td>
<thead>
<tbody>
<tr>
<td>Content</td>
</tr>
<tbody>
</table
Run Code Online (Sandbox Code Playgroud)
相反,开发软件的人决定输出这样的表是一个好主意
+------------+-------------+-------+-------------+------------+---------------+----------+
| HEADING 1 | HEADING 2 | ETC | ANOTHER | HEADING3 | HEADING4 | SML |
+------------+-------------+-------+-------------+------------+---------------+----------+
| content | more content | cont | More more | content | content 2.0 | litl |
| content | more content | cont | More more | content | content 2.0 | litl |
| content | more content | cont | More more | content | …Run Code Online (Sandbox Code Playgroud) 我正在使用Windows XP并使用EasyPHP作为服务器.我已将Codeigniter与TankAuth集成在一起.但是,当我尝试打开我的赋值文件夹时,它显示错误如下:
Unable to select the specified database: project
Filename: C:\Program Files\EasyPHP-12.1\www\assignment\system\database\DB_driver.php
Line Number: 140
Run Code Online (Sandbox Code Playgroud)
我的数据库.php中的代码如下"
$active_group = 'default';
$active_record = TRUE;
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = 'root123';
$db['default']['database'] = 'project';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
Run Code Online (Sandbox Code Playgroud)
我检查了我的database.php,里面我有数据库名称'project'.
我尝试使用主机名作为'localhost'和'127.0.0.1',但没有一个工作.
我已将默认控制器设置为'auth'即TankAuth的默认控制器.
并在'auth'控制器中的构造中初始化了'数据库'库.
刚才我使用Wamp Server尝试了同样的事情.但是,得到了相同的结果.
在某处我读到我应该尝试制作$db['default']['pconnect']和
$db['default']['db_debug']到FALSE.但它没有用. …
我正在使用insert_batch()大量插入10000多行到数据库中的表.我正在进行一些测试,我注意到有时所有10.000多行都被正确插入,但在某些情况下我会错过表格总数中的100多行.
我所拥有的记录中的字段数据是可以的,因为我为每个测试使用相同的数据,而且大多数时候我都没有问题.例如,我尝试了20次将相同的数据插入到我的数据库中,并且19次所有行都将正确插入,但在这一次我将错过100行或更多行.
功能insert_batch()如下:
protected function save_sms_to_database() {
//insert_Batch
$datestring = "%Y-%m-%d %h:%m:%s";
$time = time();
$datetime = mdate($datestring, $time);
$this->date_sent = $datetime;
foreach ($this->destinations as $k => $v) {
$sms_data[$k] = array(
'campaign_id' => $this->campaign_id,
'sender_id' => $this->from,
'destination' => $v,
'token' => md5(time() . 'smstoken' . rand(1, 99999999999)),
'message' => $this->body,
'unicode' => $this->unicode,
'long' => $this->longsms,
'credit_cost' => $this->eachMsgCreditCost,
'date_sent' => $this->date_sent,
'deleted' => 0,
'status' => 1,
'scheduled' => $this->scheduled,
);
}
$this->ci->db->insert_batch('outgoingSMS', …Run Code Online (Sandbox Code Playgroud) 我一直在为我正在进行的项目寻找一个PHP框架.其中一个主要要求是与数据库交互的简便方法.最初这必须是Oracle,但将来有可能切换到不同的数据库后端.因此,我希望能够编写尽可能与数据库无关的代码.
我最初倾向于CodeIgniter,主要是因为它支持Oracle(它包括为了利用Oracle自己的OCI8驱动程序而编写的驱动程序).
Laravel是我考虑过的另一种选择.它似乎是一个流行的选项,即使有一些以前的CodeIgniter用户(例如,请参阅此答案).但是,它的Oracle支持似乎非常有限; 据我所知,Laravel广泛使用PDO,但PDO for Oracle是实验性的,不推荐使用.
有一种简单的方法可以使用Laravel以数据库无关的方式连接到Oracle吗?
我有一个数组有多个对象(比如3个对象),每个对象有3个"键 - 值"对.
$PredefinedResult 是这样的:
[
{
"EffectiveStatusId":0,
"EffectiveStatus":"abc",
"RecordCount":0
},
{
"EffectiveStatusId":0,
"EffectiveStatus":"def",
"RecordCount":0
},
{
"EffectiveStatusId":0,
"EffectiveStatus":"ghi",
"RecordCount":0
}
]
Run Code Online (Sandbox Code Playgroud)
我有另一个对象数组,其名称为$MainResult:
[
{
"EffectiveStatusId":1,
"EffectiveStatus":"abc",
"RecordCount":7
},
{
"EffectiveStatusId":6,
"EffectiveStatus":"def",
"RecordCount":91
}
]
Run Code Online (Sandbox Code Playgroud)
预期结果 :
我想用对象替换里面的类似$PredefinedResult对象,$MainResult并希望得到如下结果:
[
{
"EffectiveStatusId":1,
"EffectiveStatus":"abc",
"RecordCount":7
},
{
"EffectiveStatusId":6,
"EffectiveStatus":"def",
"RecordCount":91
},
{
"EffectiveStatusId":0,
"EffectiveStatus":"ghi",
"RecordCount":0
}
]
Run Code Online (Sandbox Code Playgroud)
我尝试了什么:
我试过这个代码,但它没有给我想要的结果.
$FinalResult = array_replace($PredefineResult,$MainResult);
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助我如何获得上面提到的预期结果?
我正在尝试在codeigniter中创建一个简单的登录系统.当我点击我的按钮登录时,我收到一个错误:
不允许您请求的操作.
当我打开我的控制台时,我看到了这个:
POST
http://localhost/PHP/PROJECT/CodeIgniter/403(禁止)
这是我的看法:
<body>
<h1>LOG IN!</h1>
<form action="" method="post">
<label for="username">Username:</label>
<input type="text" id="username" name="username" >
<label for="password">Password</label>
<input type="password" id="password" name="password" >
<br>
<button id="btn_login" name="btn_login" >LOG IN!</button>
</form>
<div class="errors" ><?php echo validation_errors(); ?></div>
</body>
Run Code Online (Sandbox Code Playgroud)
这是我的模特:
<?php
class User_model extends CI_Model {
public $m_sUsername;
public $m_sPassword;
public $m_sEmail;
public $m_sPicture;
function __construct()
{
parent::__construct();
}
function get_user($username, $password)
{
$this->db->select("username","password");
$this->db->from(user);
$this->db->where('username',$username);
$this->db->where('password',$password);
$this->db->limit(1);
$query = $this->db->get();
return $query->num_rows();
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的控制器:
<?php
class …Run Code Online (Sandbox Code Playgroud) 我在数据库中有日期字段,有varchar数据类型.现在我必须将日期与当前日期进行比较,但由于数据类型(varchar)结果不正确.
我不想在数据库中更改数据类型,所以如何在codeigniter中查询?
在我的数据库中,日期的格式为30/11/2015
我目前的查询:
//here vd is table field(one column).
$cd = date('d/m/Y');//current date
$this->db->where("date_format(STR_TO_DATE(vd, '%d/%m/%Y'),'%d/%m/%Y') >",$cd); //comparing date with current date
$query =$this->db->get('warranty');
Run Code Online (Sandbox Code Playgroud)
通过使用上面的查询,它只是比较日期而不是月份和年份.因此它将返回那些日期大于今天日期的记录.
但正确的结果不会来......