我有一个查询,它在整数字段上使用mysql的GROUP_CONCAT.
我正在使用PHPMYADMIN来开发此查询.我的问题是,不是显示1,2是连接字段的结果,而是[BLOB - 3B].
查询是
SELECT rec_id,GROUP_CONCAT(user_id)
FROM t1
GROUP BY rec_id
Run Code Online (Sandbox Code Playgroud)
(两个字段都是unsigned int,两者都不是唯一的)
我应该添加什么来查看实际结果?
我想弄清楚如何is_unique在以下情况下使用Codeigniter表单验证库中的规则.
我正在尝试提交编辑用户表单并具有以下规则:
$this->form_validation->set_rules('user_name', 'User Name', 'required|trim|xss_clean|is_unique[users.user_name]');
Run Code Online (Sandbox Code Playgroud)
如果表单中的其他值被更改但该值保持不变,该怎么办?表单将会看到此值已经存在,因此如果不更改此值,我将如何保护它不被编辑.
当我在过去创建多步表单时,我通常会在将表单数据返回到视图之前将其存储在会话中,这样,如果用户刷新页面或单击浏览器的本机后退按钮,数据就会持续存在.
将我过去的逻辑转移到Laravel我构建了以下三个阶段的形式:
[Input -> Confirm -> Success]
Route::group(array('prefix' => 'account'), function(){
Route::get('register', array(
'before' => 'guest',
'as' => 'account-create',
'uses' => 'AccountController@getCreate'
));
Route::post('register', array(
'before' => 'guest|csrf',
'as' => 'account-create-post',
'uses' => 'AccountController@postCreate'
));
Route::get('register/confirm', array(
'before' => 'guest',
'as' => 'account-create-confirm',
'uses' => 'AccountController@getCreateConfirm'
));
Route::post('register/confirm', array(
'before' => 'guest|csrf',
'as' => 'account-create-confirm-post',
'uses' => 'AccountController@postCreateConfirm'
));
Route::get('register/complete', array(
'before' => 'guest',
'as' => 'account-create-complete',
'uses' => 'AccountController@getCreateComplete'
));
});
Run Code Online (Sandbox Code Playgroud)
<?php
class AccountController extends BaseController { …Run Code Online (Sandbox Code Playgroud) 我用puphpet.com快速设置了Wheezy VM.VM运行良好,但我喜欢为Apache添加另一个虚拟主机.
根据puphpet文件:
我已经完全重写了PuPHPet,以便利用Puppet的内置配置工具Hiera.只需查看下载的文件夹,然后打开puppet/hieradata/common.yaml.这是控制一切的神奇文件!
但是我的下载不包括puppet/hieradata文件夹和common.yaml文件.
我尝试创建上面的文件夹和文件,但执行时不会确认它们vagrant reload.
我是PostgreSQL的新手,因此非常感谢社区提供的任何指导。
我正在更新一个刚继承的旧站点的CMS中的某些功能。基本上,在将文章插入数据库之前,我需要它的ID。无论如何,在数据库会话(插入)开始之前,是否仍要检查序列将使用的下一个值?
起初我以为可以使用SELECT max(id) from tbl_name,但是由于id是从序列中自动递增的,并且文章通常会被删除,因此显然不会为序列中的下一个值返回正确的id。
由于本文尚未在数据库中,并且数据库会话尚未启动,因此似乎无法使用currval()postgreSQL 的功能。此外,如果使用nextval()它,则在插入数据之前会自动递增序列(插入也会自动递增序列,最终导致序列加倍)。
目前,我的解决方法如下:
function get_next_id()
{
$SQL = "select nextval('table_id_seq')";
$response = $this->db_query($SQL);
$arr = pg_fetch_array($query_response, NULL, PGSQL_ASSOC);
$id = (empty($arr['nextval'])) ? 'NULL' : intval($arr['nextval']);
$new_id = $id-1;
$SQL = "select setval('table_id_seq', {$new_id})";
$this->db_query($SQL);
return $id;
}
Run Code Online (Sandbox Code Playgroud)
我SELECT nextval('table_id_seq')用来获取序列中的下一个ID。随着序列的增加,我立即使用它SELECT setval('table_id_seq',$id)来将序列设置回其原始值。这样,当用户提交数据并且代码最终命中INSERT语句时,它将自动递增,并且插入之前和插入之后的ID相同。
虽然这对我有用,但我对postgreSQL不太热衷,想知道它是否会导致任何问题,或者它们是否不是更好的方法?没有自动递增的序列就没有办法检查序列的下一个值吗?
如果有帮助,我正在使用PostgreSQL 7.2
在我继承的服务器上使用 PHP 处理 CURL 时遇到了一些麻烦。
到目前为止,我已经通过取消注释该extension=php_curl.dll行并重新启动 apache 来启用我的 php.ini 中的扩展。
但是,我现在在启动 PHP 时收到以下错误:
PHP Warning: PHP Startup: Unable to load dynamic library '/opt/local/lib/php/extensions/php_curl.dll
php_curl.dll 文件不存在于上述目录中,我找不到任何合法的下载它的地方(似乎没有包含在 PHP 或 Curl 中)。
更新
按照此处答案中提供的步骤,我能够编译一个新的 php_curl.so 文件并将其安装到扩展目录中。
Cudos 去Francois Deschenes!!
从头开始编译 curl.so (php_curl.dll) 模块:
cd php-5.3.3/ext/curl/)。phpize。./configure。make。sudo make install。extension=curl.so在 php.ini 中取消注释。您还应该确保在开始处理之前将扩展名注释掉,否则您可能会收到有关模块已经存在的错误。
我使用控制器为页面做一些自定义uri路由,它目前工作得很好.
这是控制器的精简版本,它使用PHPTAL作为模板引擎.
public function index()
{
$this->tal->display('index');
}
public function view($url)
{
$this->loadView($url);
}
private function loadView($url)
{
if (file_exists(ROOTPATH . 'webroot/' . $url . '/index.html'))
{
$this->tal->display($url . '/index');
}
else
{
show_404();
}
}
Run Code Online (Sandbox Code Playgroud)
我最近注意到,每次访问页面控制器时,我的日志中都出现以下错误:
ERROR - 2013-02-06 10:58:23 --> 404 Page Not Found -->
我发现这很奇怪,因为页面按预期显示,并且肯定没有404标题,网络面板没有404状态.
我最后将其缩小到show_404()方法中调用的辅助loadView()方法.删除该行可以阻止错误完全出现在日志文件中.
只有在找不到视图文件时才应执行此§show_404()§,在这种情况下,它应该显示404错误页面.但是,无论是否调用该方法,该方法的日志记录部分似乎都是在每次调用页面控制器时执行的loadView().
我index()在浏览器中访问视图,一切似乎工作正常,加载了正确的视图文件,没有错误.但是,从该loadView()方法记录404错误消息.该loadView()方法甚至没有从该index()方法调用,但它在日志文件中的输出似乎表明它正在被执行.
我想在我的数据库中存储2个图像.当我上传2张图片时,两者都成功存储,但在尝试上传单张图片时,则为未上传的图片提供未定义的错误.哪里我错了?
我的代码是:
<label for="certificate">Upload Scaned Document:</label>
<input type="file" id="uploadImage" name="image" />
<label for="certificate">Upload Scaned QR Code</label>
<input type="file" name="QRimage" id="File2" />
Run Code Online (Sandbox Code Playgroud)
和PHP代码是
if((!empty($_FILES["image"])) && ($_FILES['image']['error'] == 0)) {
$imageName = mysql_real_escape_string($_FILES["image"]["name"]);
$imageData = mysql_real_escape_string(file_get_contents($_FILES["image"]["tmp_name"]));
$imageType = mysql_real_escape_string($_FILES["image"]["type"]);
}
if((!empty($_FILES["QRimage"])) && ($_FILES['QRimage']['error'] == 0)) {
$QRimageName = mysql_real_escape_string($_FILES["QRimage"]["name"]);
$QRimageData = mysql_real_escape_string(file_get_contents($_FILES["QRimage"]["tmp_name"]));
}
Run Code Online (Sandbox Code Playgroud) 我的反应应用的工作原理如预期的第一级路线,例如/,/foo和/bar,双方使用的应用程序导航菜单或直接键入网址时,系统到浏览器地址栏的时候。
但是,更深的网址(例如,/foo/bar仅在使用应用程序导航菜单时有效,而在直接将网址输入到浏览器地址栏中时则无效)。
对于depper URL,在刷新页面或直接在地址栏中输入url时,将显示站点index.html(白屏,因为未加载任何内容或样式),但由于没有错误,因此它似乎没有通过响应呈现出现在控制台中,而react dev工具显示黑屏。
我正在使用带有--history-api-fallback选项集的react-router 4.0.0和webpack-dev-server 。我尝试过切换服务器以表示并设置一个catch全部以将所有路由重定向到index.html,以及降级到react-router 3.0.2,但是问题在两个实例中仍然存在。
我将代码缩减到路由器和一些我要路由的裸机的最小数量。
import React from 'react';
import { render } from 'react-dom';
import { BrowserRouter } from 'react-router-dom';
// import components
import AppContainer from './components/AppContainer';
render(
<LocaleProvider>
<BrowserRouter>
<AppContainer/>
</BrowserRouter>
</LocaleProvider>,
document.querySelector('#main')
);
Run Code Online (Sandbox Code Playgroud)
import React from 'react';
import { Route, Switch, Link } from 'react-router-dom';
// import components
import Home from './Home';
import About from './About';
import Test from './Test'; …Run Code Online (Sandbox Code Playgroud) 任何人请帮助我检索数据库数据以及如何在html table中查看它.我给出的编码是否正确,如果没有,请你说我要如何给.为了在html表中查看它.
调节器
class edit_content extends CI_Controller {
function edit_content()
{
parent::__construct();
$this->load->model('editcontent_model');
$this->load->helper('url');
$this->load->library('acl');
$this->data = $this->editcontent_model->get_contents();
}
}
Run Code Online (Sandbox Code Playgroud)
视图
<table>
<tr>
<th>Content</th>
</tr>
<?php foreach($this->data as $r): ?>
<tr>
<tr><?php echo $r['content']; ?>
</tr>
<?php endforeach; ?>
<table>
Run Code Online (Sandbox Code Playgroud)
模型
class editcontent_model extends CI_Model {
var $CI;
function editcontent_model(){
parent::__construct();
}
function get_contents() {
$this->db->select('content');
$this->db->from('contents');
$query = $this->db->get();
return $result = $query->result();
$this->load->view('edit_content/edit_content', $result);
}
}
Run Code Online (Sandbox Code Playgroud) 我一直在尝试为最近移动的页面设置重定向。该页面最初位于http://example.com/foo/,但后来移至http://example.com/foo/bar/。
我在我的网站.htaccess文件中尝试了以下规则:
RedirectMatch 301 ^/foo/$ /foo/bar/
但是,转到 url 会http://example.com/foo/导致重定向到 url http://example.com/foo/bar/?/foo/。虽然 url 有效并且我想重定向到加载的页面,但我很想摆脱?/foo/url 末尾的额外内容。
这是我的完整 .htaccess:
RewriteEngine On
RewriteBase /
# add trailing slash
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ $1/ [R=301,L]
# allow access to certain directories in webroot
RewriteCond $1 !^(index\.php|robots\.txt|css/|lib/|js/|images/|^(.*)/images)
# gets rid of index.php
RewriteRule ^(.*)$ index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# page redirects
RedirectMatch 301 ^/foo/$ /foo/bar/
Run Code Online (Sandbox Code Playgroud) php ×5
codeigniter ×4
.htaccess ×1
apache ×1
casting ×1
forms ×1
group-by ×1
group-concat ×1
html ×1
laravel ×1
macos ×1
mod-rewrite ×1
mysql ×1
phpmyadmin ×1
postgresql ×1
puphpet ×1
puppet ×1
react-router ×1
reactjs ×1
redirect ×1
string ×1
vagrant ×1