我有一个SQL查询,我想在单个查询中插入多行.所以我使用了类似的东西:
$sql = "INSERT INTO beautiful (name, age)
VALUES
('Helen', 24),
('Katrina', 21),
('Samia', 22),
('Hui Ling', 25),
('Yumie', 29)";
mysql_query( $sql, $conn );
Run Code Online (Sandbox Code Playgroud)
问题是当我执行这个查询时,我想检查是否应该检查一个UNIQUE密钥(不是PRIMARY KEY),例如'name'上面的密钥,如果'name'已经存在,则应该更新相应的整行,否则插入.
例如,在下面的示例中,如果'Katrina'数据库中已存在,则应更新整个行,而不管字段的数量.如果'Samia'不存在,则应插入该行.
我想过使用:
INSERT INTO beautiful (name, age)
VALUES
('Helen', 24),
('Katrina', 21),
('Samia', 22),
('Hui Ling', 25),
('Yumie', 29) ON DUPLICATE KEY UPDATE
Run Code Online (Sandbox Code Playgroud)
这是陷阱.我陷入困境,对如何继续感到困惑.我有多行要一次插入/更新.请给我一个指示.谢谢.
我有一个像这样的对象:
var myObject = { '0' : 'blue' };
Run Code Online (Sandbox Code Playgroud)
现在,当我尝试访问键'0'的值时,如:
myObject.0
Run Code Online (Sandbox Code Playgroud)
......我收到了一个错误.(也许这不是正确的方法?)
如何访问数字键的值(如上所述)?
我有一个php数组,如:
myarr[1] = "1",
myarr[2] = "1.233",
myarr[3] = "0",
myarr[4] = "2.5"
Run Code Online (Sandbox Code Playgroud)
值实际上是字符串,但我希望这个数组按数字排序,也考虑浮点值和维护索引关联.
请帮帮我.谢谢
使用jQuery,如何删除我的html主体中的锚标签,该标签也包含一个包装器div,这个包装器div位于我要删除的锚标签之上.
它像是
<body>
<div id="wrapper">
<a id="not_me" href="#">hi</a>
</div>
<a id="remove_me" href="#">Remove Me</a>
</body>
Run Code Online (Sandbox Code Playgroud)
如果我使用
$("body").find("a:first-child").remove();
Run Code Online (Sandbox Code Playgroud)
它删除了我的包装器div中的第一个锚标签,即一个id为"not_me"的锚标签,而我希望删除"remove_me".
我的数据库中保存了一个json字符串.当我从db检索它以将其传递给javascript函数(ajax调用),以及该行的id时,我是json_encoding两者(查询结果数组)并将其传递给js.但是json_encode正在为我已经的json字符串添加不需要的斜杠.如何逃避它.记住我必须将id作为数组中的第二个元素传递.
我在db中的json字符串是这样的:
{"field":"City","term":"Hawaiian Gardens, CA"}
Run Code Online (Sandbox Code Playgroud)
并且id是5.
所以PHP中的查询结果数组是:
$savedVal['id'] = 5
$savedVal['object_str'] = {"field":"City","term":"Hawaiian Gardens, CA"}
Run Code Online (Sandbox Code Playgroud)
所以在json_encode($ savedVal)之后理想情况下它应该是:
{"id":"5","object_str":{"field":"City","term":"Hawaiian Gardens, CA"}}
Run Code Online (Sandbox Code Playgroud)
但json_encoding数组给了我:
{"id":"5","object_str":"{\"field\":\"City\",\"term\":\"Hawaiian Gardens, CA\"}}
Run Code Online (Sandbox Code Playgroud)
在object_str值周围也有额外的斜杠和引号.请帮我.
谢谢.
我刚开始使用Zend框架2和Doctrine.我想为我的相册模块设置单元测试.
当我c:\wamp\www\zf2-tutorial\module\Album\test > phpunit从命令提示符运行时,出现以下错误:
PHPUnit 3.7.10 by Sebastian Bergmann.
Configuration read from C:\wamp\www\zf2-tutorial\module\Album\test\phpunit.xml.d
ist
.FFE
Time: 2 seconds, Memory: 8.25Mb
There was 1 error:
1) AlbumTest\Controller\AlbumControllerTest::testIndexActionCanBeAccessed
Zend\ServiceManager\Exception\ServiceNotFoundException: Zend\ServiceManager\Serv
iceManager::get was unable to fetch or create an instance for doctrine.entityman
ager.orm_default
C:\wamp\www\zf2-tutorial\vendor\zendframework\zendframework\library\Zend\Service
Manager\ServiceManager.php:452
C:\wamp\www\zf2-tutorial\module\Album\src\Album\Controller\AlbumController.php:2
5
C:\wamp\www\zf2-tutorial\module\Album\src\Album\Controller\AlbumController.php:3
3
C:\wamp\www\zf2-tutorial\vendor\zendframework\zendframework\library\Zend\Mvc\Con
troller\AbstractActionController.php:88
C:\wamp\www\zf2-tutorial\vendor\zendframework\zendframework\library\Zend\EventMa
nager\EventManager.php:464
C:\wamp\www\zf2-tutorial\vendor\zendframework\zendframework\library\Zend\EventMa
nager\EventManager.php:208
C:\wamp\www\zf2-tutorial\vendor\zendframework\zendframework\library\Zend\Mvc\Con
troller\AbstractController.php:107
C:\wamp\www\zf2-tutorial\module\Album\test\AlbumTest\Controller\AlbumControllerT
est.php:71
--
There were 2 failures:
1) AlbumTest\Controller\AlbumControllerTest::testDeleteActionCanBeAccessed
Failed asserting that 302 matches expected 200.
C:\wamp\www\zf2-tutorial\module\Album\test\AlbumTest\Controller\AlbumControllerT
est.php:54
2) AlbumTest\Controller\AlbumControllerTest::testEditActionCanBeAccessed
Failed asserting that 302 …Run Code Online (Sandbox Code Playgroud) 我需要在zend框架2中实现图像大小调整功能(最好使用gd2库扩展).
我找不到相同的任何组件/帮助器.任何参考?
如果我想创建一个,我应该在哪里添加它.在较旧的Zend框架中,有一个Action Helper的概念,那么Zend框架2呢?
请在此提出最佳解决方案.
我正在使用谷歌地图.我想在标记点击上显示自定义信息窗口.为此,我的自定义信息窗口的左上角应覆盖标记.
问题是我无法在地图上得到标记的精确(x,y)即map-div位置.我第一次可以使用它:
var mposition = map.fromLatLngToDivPixel(marker.getLatLng());
pos = new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(mposition.x,mposition.y));
Run Code Online (Sandbox Code Playgroud)
但是当我拖动地图时,x,y中的标记位置保持不变,因此我的信息窗口显示在错误的位置.请帮助我,即使在拖动/缩放后,如何在地图上获得标记的div相关位置.
谢谢.
如何为可配置产品的相关产品显示"注册以便在此产品重新有库存时获得通知"链接.
比方说,我们有一件T恤(一种可配置的产品),我们以3种尺寸销售它 - 中型,大型和Xtra-Large(简易相关产品).
当大尺寸缺货时,我们如何让用户在订货时订阅它以进行通知.
请注意我已在admin中设置此设置:
System > Configuration > Catalog > Allow Alert When Product Comes Back in Stock - Yes
Run Code Online (Sandbox Code Playgroud)
我注意到这个警报的网址就像(它是我店里的一个简单产品):
http://localhost/mystore/index.php/productalert/add/stock/product_id/1/[some key]/[some key],,/
Run Code Online (Sandbox Code Playgroud)
有没有什么方法可以直接调用这个url,传递我们相关产品的产品ID?如果是这样,那么网址末尾的那些键呢?
请指导.
谢谢
我正在使用Adobe AIR开发应用程序.
当我们使用FileReference浏览文件时,我们如何获得文件的绝对路径或文件的"nativePath"(我们在Flex/AIR中称之为)?
我知道有与此相关的安全问题,但有任何黑客攻击或是否有我不知道的直接解决方案?
请帮帮我.
谢谢.
在我的cakephp项目中,我使用模型类的afterSave()方法.在这个方法中,我想调用另一个位于app_controller文件中的方法.
class MyModel extends AppModel {
var $name = 'MyModel';
function afterSave($created) {
$this->MyController->updateData();
}
}
Run Code Online (Sandbox Code Playgroud)
这里updateData()位于app_controller文件中,该文件由MyController控制器扩展.
上面的代码不起作用,所以在这种情况下如何实际调用updateData()..
请指导.
谢谢
我目前正在使用Magento社区版,版本1.7.0.0,并且由于主要的安全漏洞修复,Magento推荐,我想升级我的应用程序以使用最新版本1.7.0.2.
升级magento版本的最佳方法是什么?
我知道有一些方法,如命令行升级和使用Magento Connect Manager,但不知道哪些以及如何使用.
谢谢
javascript ×2
magento ×2
apache-flex ×1
arrays ×1
cakephp ×1
doctrine-orm ×1
duplicates ×1
file ×1
google-maps ×1
jquery ×1
json ×1
model ×1
mysql ×1
php ×1
sql ×1
unit-testing ×1
upgrade ×1