我试图在codeigniter上执行此sql查询
SELECT* FROM person WHERE type = 'staff' AND description LIKE 'university%'
Run Code Online (Sandbox Code Playgroud)
我不确定它是否正确......
$this->db->get_where('person' , array('type'=>'staff'))
->like('description','university%')
->result_array();
Run Code Online (Sandbox Code Playgroud)
有没有人对我的案子有所了解?提前致谢 ...
嗨,我想从这里学到一些东西,基本上我希望我的系统访问在谷歌帐户,不知何故我设法做以下
但我觉得我在某些方面做错了,这就是 Oauth2callback
class Oauth2callback extends CI_Controller {
function __construct(){
parent::__construct();
$this->load->helper('url');
$this->load->library('session');
require_once APPPATH.'libraries/Google/Client.php';
session_start();
}
public function index()
{
$client_id = $this->config->item('client_id');
$client_secret = $this->config->item('client_secret');
$redirect_uri = $this->config->item('redirect_uri');
$client = new Google_Client();
$client->setClientId($client_id);
$client->setClientSecret($client_secret);
$client->setRedirectUri($redirect_uri);
$client->addScope("https://www.googleapis.com/auth/userinfo.email");
$client->addScope("https://www.googleapis.com/auth/userinfo.profile");
if (isset($_GET['code'])) {
$client->authenticate($_GET['code']);
$_SESSION['access_token'] = $client->getAccessToken();
$redirect = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'];
header('Location: ' . filter_var($redirect, FILTER_SANITIZE_URL));
}
if (isset($_SESSION['access_token']) && $_SESSION['access_token']) {
$client->setAccessToken($_SESSION['access_token']);
} else {
$authUrl = $client->createAuthUrl();
}
if ($client->getAccessToken()) {
$_SESSION['access_token'] = …Run Code Online (Sandbox Code Playgroud) 我想将变量存储在会话中,目前我正在尝试这样但不起作用.
在控制器中
<?php
session_start();
$_SESSION['myvar']='myvalue';
?>
Run Code Online (Sandbox Code Playgroud) 我是数据库工作的新手,我想知道是否有人可以帮助我理解为什么当我只是在本地开发时我一直得到403 Forbidden错误.我正在使用codeigniter尝试创建一个简单的登录程序.前几天我让程序在不同的计算机上运行,但是当我尝试在浏览器中打开"视图"或"控制器"文件时,现在我在这台计算机上的所有内容都是403错误.它必须在某处设置,但我根本不知道在哪里看.有任何想法吗?
这是我的database.php文件:
$active_group = 'default';
$active_record = TRUE;
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'tester';
$db['default']['password'] = 'tester';
$db['default']['database'] = 'intranet';
$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)
这是控制器文件welcome.php:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Welcome extends CI_Controller {
/**
* Index Page for this controller.
*
* Maps …Run Code Online (Sandbox Code Playgroud) 我得到一个内存耗尽错误,我不应该占用任何内存!
该应用程序位于Windows 8 Server/IIS i/PHP 5.5/CodeIgniter/MS SQL Server上
错误如下:
[2014年5月23日10:56:57 America/New_York] PHP致命错误:在C:\ inetpub\wwwroot\application\models\DW_import.php上允许的内存大小为134217728字节耗尽(试图分配1992字节) 112
[23-May-2014 11:07:34 America/New_York] PHP致命错误:在C:\ inetpub\wwwroot\application\models\DW_import.php上允许的内存大小为134217728字节耗尽(试图分配2438字节) 113
该脚本在目录中查找几个不同的CSV文件以导入数据库.请记住,导入文件很大,有些高达4 Gigs的数据.据我所知,没有变量不断聚合可能导致此问题的数据.正在运行的脚本(模型)(此控制器没有视图,只有模型)如下:
DW_import.php
<?php
class dw_import extends CI_Model {
public function import(){
global $file,$errLogFile,$logFile,$tableName, $fieldList, $file, $count, $line, $query;
$this->load->database(); // init db connection
// map file types to database tables
$fileToDBArr = array(
'Customers' => 'customer',
'Customers_Historical' => 'customer_historical',
'Orders' => 'order',
'Customer_AR_Aggs' => 'customer_ar_aging_agg'
);
// extend timeout of this script
ini_set('max_execution_time', 3600);
// error handler to log …Run Code Online (Sandbox Code Playgroud) 有两个表:管理员,新闻
结构是这样的:
admin
-----
id
name
news
-----
id
createBy
updateBy
Run Code Online (Sandbox Code Playgroud)
目前createBy和updateBy存储了admin id,我想得到createBy和updateBy的管理员名称,如何实现呢?谢谢
这是我在codeigniter中使用的
$this->db->select('*');
$this->db->from('news,admin');
$this->db->where('id', $id);
$this->db->where('admin.id', 'news.updateBy');
Run Code Online (Sandbox Code Playgroud)
无论如何sql查询是受欢迎的,我会将其转换为codeigniter语法.谢谢你的帮助
我在CodeIgniter中扩展了一个处理PHPExcel的控制器.到目前为止,到目前为止,我还没有到Z列附近.到了,我受到了欢迎:
致命错误:未捕获的异常"异常"与消息"无效单元坐标AA"在/PATH/phpexcel/PHPExcel/Cell.php:513堆栈跟踪:#0 /PATH/phpexcel/PHPExcel/Worksheet.php(1119):PHPExcel_Cell: :coordinateFromString( 'AA')#1 /PATH/phpexcel/PHPExcel/Worksheet.php(1022):PHPExcel_Worksheet-> getCell( 'AA')#2 /PATH/application/modules/bookings/controllers/export.php(138 ):PHPExcel_Worksheet-> setCellValue( 'AA', '订购单...')#3内部功能]:导出 - >指数()#4 /PATH/system/core/CodeIgniter.php(297):call_user_func_array(阵列,阵列)#5 /PATH/index.php(163):require_once( '/ PATH ...')#6 {}主抛出/PATH/phpexcel/PHPExcel/Cell.php上线513
我已经编写了一些代码来生成AB-AZ BB-BZ列,但是 - 正如您在上面看到的那样 - PHPExcel没有它.
$cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_to_sqlite;
$cacheSettings = array('memoryCacheSize' => '32MB');
PHPExcel_Settings::setCacheStorageMethod($cacheMethod, $cacheSettings);
$objPHPExcel = new PHPExcel();
$objPHPExcel->getProperties()->setTitle($arrayAttr['form']['title']);
$objPHPExcel->getProperties()->setDescription("Export of Advanced Search");
$objPHPExcel->getProperties()->setCreator("Me!");
$objPHPExcel->getProperties()->setLastModifiedBy("Me!");
// Assign cell values
$objPHPExcel->setActiveSheetIndex(0);
$a=1;
$p=1;
for ($s=65; $s<=90; $s++):
// Assign the letters of the alphabet.
for ($i=65; $i<=90; $i++):
if (chr($s) == "A"):
$array_column_indices[$a] = chr($i) . $p;
else: …Run Code Online (Sandbox Code Playgroud) 我在旧的codeigniter安装上使用活动记录,我遇到了使用get_where函数执行多个查询的问题.例如以下代码
$this->db->get_Where('activation', array('email'=>'test@yahoo.com'));
echo $this->db->last_query();
$this->db->get_Where('users', array('email'=>'test@yahoo.com'));
echo $this->db->last_query();
Run Code Online (Sandbox Code Playgroud)
第一个查询生成
SELECT * FROM (`activation`) WHERE `email` = 'test@yahoo.com'
Run Code Online (Sandbox Code Playgroud)
第二个抛出一个循环并生成
SELECT * FROM (`activation`, `users`)
WHERE `email` = 'test@yahoo.com' AND `email` = 'test@yahoo.com'
Run Code Online (Sandbox Code Playgroud)
我应该清理什么吗?
我遇到一个在我的网站非常缓慢的加载.
起初我以为我的代码可能很慢,但在将我以前的工作与同一工作进行比较后,将其迁移到codeigniter我可以说加载现在明显变慢了.
您是否有任何建议或方法来改善codeigniter的性能?
我正在尝试从控制器到日志文件进行var_dump操作,但空着一行。
这是我控制器内的代码:
$checked = 'test error';
log_message('error', var_dump($checked));
Run Code Online (Sandbox Code Playgroud)
在我的日志文件中,我得到:
错误-2014-06-23 12:30:34->
我能够得到以下结果:
$checked = 'test error';
log_message('error', $checked);
Run Code Online (Sandbox Code Playgroud)
因此,var_dump()必须存在问题吗?
有任何想法吗?谢谢您的帮助。
codeigniter ×10
php ×9
mysql ×4
sql ×2
google-oauth ×1
html ×1
iis-8 ×1
mamp ×1
oauth ×1
performance ×1
phpexcel ×1
session ×1
sql-server ×1
windows-8.1 ×1