
我有这样的设置,结果包含在span标签中,并使用jquery"移动"到其他div中.目前搜索只返回30个最大值,这一切都很好,但我觉得这不是一个公平的限制.我希望能够做的是当结果多于可以显示的结果时滚动div,如列表框.我尝试了许多不同的方法,但似乎没有一种方法能够很好地工作.我希望它能保持一个固定的高度
我有一个问题,它现在才出现.我在共享的Web托管计划中,最多有10个并发数据库连接.Web应用程序有几十个查询,一些pdo,一些mysql_*.
加载一个页面特别是在5-6个并发连接处达到峰值意味着它需要至少2个用户同时加载它以在其中一个或两个上发出错误.
我知道这是低效的,我确信我可以减少相当多,但这就是我的想法是将pdo代码移动到一个函数中,只传递一个查询字符串和一个变量数组,然后让它返回一个数组(部分是为了整理我的代码).
实际问题:
如何让这个函数继续重试,直到它设法执行,并保持调用它的脚本(以及任何可能调用该脚本的脚本),直到它设法执行并返回它的数据为止?我不希望事情执行不正常,我很高兴代码在高峰时间被延迟一秒左右
由于有人会要求代码,这就是我现在所做的.我在自己的文件中有这个,所以我有一个更改连接参数的中心位置.if语句只是为了在我从测试服务器切换到肝脏服务器时不再需要不断更改参数
$dbtype = "mysql";
$server_addr = $_SERVER['SERVER_ADDR'];
if ($server_addr == '192.168.1.10') {
$dbhost = "localhost";
} else {
$dbhost = "xxxxx.xxxxx.xxxxx.co.nz";
}
$dbname = "mydatabase";
$dbuser = "user";
$dbpass = "supersecretpassword";
Run Code Online (Sandbox Code Playgroud)
我'在函数顶部包含'该文件
include 'db_connection_params.php';
$pdo_conn = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass);
Run Code Online (Sandbox Code Playgroud)
然后在一个连接上运行这样的命令
$sql = "select * from tbl_sub_cargo_cap where sub_model_sk = ?";
$capq = $pdo_conn->prepare($sql);
$capq->execute(array($sk_to_load));
while ($caprow = $capq->fetch(PDO::FETCH_ASSOC)) {
//stuff
}
Run Code Online (Sandbox Code Playgroud) 有人可以告诉我我的代码的语法有什么问题吗?(这是我正在突出显示并运行的唯一代码,因此行号应匹配)
CREATE TRIGGER `trg_part_upd` AFTER UPDATE ON `tbl_sub_model_eng_trans_part`
FOR EACH ROW
if NEW.engine_sk = 0 and NEW.trans_sk = 0
then
UPDATE tbl_sub_model tsm
INNER JOIN tbl_fct_sub_eng_trans tfset ON tsm.sub_model_sk = tfset.sub_model_sk
INNER JOIN tbl_sub_model_eng_trans_part tsmetp ON tfset.trans_sk = tsmetp.trans_sk
SET tsm.last_modified_date = NOW()
WHERE tsmetp.sub_model_sk=NEW.sub_model_sk;
end if;
Run Code Online (Sandbox Code Playgroud)
我收到这两个错误:
错误代码:1064.您的SQL语法有错误; 检查与您的MySQL服务器版本对应的手册,以便在第9行的''附近使用正确的语法
错误代码:1064.您的SQL语法有错误; 检查与MySQL服务器版本对应的手册,以便在第1行的'end if'附近使用正确的语法
我正在对一个旧的mysql数据库运行查询,并且许多查询花费的时间比他们应该的要长得多.例如,ad_vehicle有60000行,id_ad_link有25000行
SELECT * FROM autotalk_identicar_old.ad_vehicle
left join autotalk_identicar_old.id_ad_link on autotalk_identicar_old.ad_vehicle.vehiclekey=autotalk_identicar_old.id_ad_link.rbvehiclekey;
Run Code Online (Sandbox Code Playgroud)
持续时间是2.323秒,在执行命令后12分钟仍然需要获取(使用mysql工作台,但不确定这是否有所不同).运行在带有3核myd四核@ 3.4ghz和1GB内存的虚拟机中运行
我不认为有任何索引/主键会产生如此大的差异吗?
前几行ad_vehicle
A145 00AA, PV, ALFA, 145, 2000, 3HBm, 1.6, , , , , P, , 5, 1596, , , 32995, , , 3HBm 1.6p
A145 00AB, PV, ALFA, 145, 2000, 3HBm, 1.7, , , , , P, , 5, 1712, , , 41995, , , 3HBm 1.7p
A145 01AA, PV, ALFA, 145, 2001, 3HBm, 1.6, , , , , P, , 5, 1596, , , 32995, , …Run Code Online (Sandbox Code Playgroud) 有人能告诉我为什么会出错吗?
我将代码移动到函数中以允许我延迟它,因此它不那么敏感(令人讨厌)
未捕获的ReferenceError:未定义hideleftnav
未捕获的ReferenceError:未定义showleftnav
function showleftnav()
{
$(".leftnavdiv").css('width','500px');
$("body").css('padding-left','510px');
//get measurements of window
var myWidth = 0, myHeight = 0;
if( typeof( window.innerWidth ) == 'number' ) {
//Non-IE
myWidth = window.innerWidth;
myHeight = window.innerHeight;
} else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
//IE 6+ in 'standards compliant mode'
myWidth = document.documentElement.clientWidth;
myHeight = document.documentElement.clientHeight;
} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
//IE 4 compatible
myWidth = document.body.clientWidth;
myHeight = document.body.clientHeight; …Run Code Online (Sandbox Code Playgroud) 我正在从mysql_connect切换到pdo,但无法实现.这是我的代码:
//get the row sk
$sk = strtok($string, "_");
//get the column name (the rest of the $string)
$column_name = substr($string, strpos($string, "_") + 1);
//get the value
$value = $_SESSION['save_arr'][$string];
echo "{$column_name} {$value} {$sk}</br>";
$sql = "update tbl_brand set ?=? where brand_sk=?";
$q = $pdo_conn->prepare($sql);
$q->execute(array($column_name, $value, $sk));
Run Code Online (Sandbox Code Playgroud)
如果我硬编码一些值,那么它工作正常
$sql = "update tbl_brand set name_long='name' where brand_sk='1'";
Run Code Online (Sandbox Code Playgroud)
我确定这只是一个语法问题,但我无法看到它.我正在研究这个例子http://www.phpeveryday.com/articles/PDO-Error-Handling-P552.html
回声的结果如下:
name_long National Autjho Glass 2
mysql ×4
pdo ×2
php ×2
css ×1
html ×1
if-statement ×1
javascript ×1
jquery ×1
left-join ×1
multi-user ×1
scroll ×1
settimeout ×1
sql-update ×1
syntax ×1
triggers ×1