小编Pra*_*ant的帖子

MySQL ON DUPLICATE KEY UPDATE用于在单个查询中插入多行

我有一个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)

这是陷阱.我陷入困境,对如何继续感到困惑.我有多行要一次插入/更新.请给我一个指示.谢谢.

mysql sql duplicates

192
推荐指数
1
解决办法
9万
查看次数

如何访问数字属性?

我有一个像这样的对象:

var myObject = { '0' : 'blue' };
Run Code Online (Sandbox Code Playgroud)

现在,当我尝试访问键'0'的值时,如:

myObject.0 
Run Code Online (Sandbox Code Playgroud)

......我收到了一个错误.(也许这不是正确的方法?)

如何访问数字键的值(如上所述)?

javascript

34
推荐指数
2
解决办法
2万
查看次数

在php中排序数字字符串数组

我有一个php数组,如:

myarr[1] = "1",
myarr[2] = "1.233",
myarr[3] = "0",
myarr[4] = "2.5"
Run Code Online (Sandbox Code Playgroud)

值实际上是字符串,但我希望这个数组按数字排序,也考虑浮点值和维护索引关联.

请帮帮我.谢谢

php arrays

29
推荐指数
2
解决办法
4万
查看次数

jquery删除直接子元素

使用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".

jquery

19
推荐指数
3
解决办法
7万
查看次数

json_encode添加不需要的斜杠

我的数据库中保存了一个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值周围也有额外的斜杠和引号.请帮我.

谢谢.

javascript json

9
推荐指数
1
解决办法
8693
查看次数

phpunit单元测试错误zf2学说

我刚开始使用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)

unit-testing doctrine-orm zend-framework2

8
推荐指数
1
解决办法
1880
查看次数

图像调整大小zf2

我需要在zend框架2中实现图像大小调整功能(最好使用gd2库扩展).

我找不到相同的任何组件/帮助器.任何参考?

如果我想创建一个,我应该在哪里添加它.在较旧的Zend框架中,有一个Action Helper的概念,那么Zend框架2呢?

请在此提出最佳解决方案.

image-resizing zend-framework2

6
推荐指数
1
解决办法
1万
查看次数

在Google地图中获取(x,y)中的标记位置

我正在使用谷歌地图.我想在标记点击上显示自定义信息窗口.为此,我的自定义信息窗口的左上角应覆盖标记.

问题是我无法在地图上得到标记的精确(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相关位置.

谢谢.

google-maps

4
推荐指数
1
解决办法
3万
查看次数

magento显示"注册以便在此产品重新有库存时获得通知"链接以获取简单相关产品

如何为可配置产品的相关产品显示"注册以便在此产品重新有库存时获得通知"链接.

比方说,我们有一件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?如果是这样,那么网址末尾的那些键呢?

请指导.

谢谢

magento

4
推荐指数
1
解决办法
1万
查看次数

使用FileReference获取文件的nativePath

我正在使用Adobe AIR开发应用程序.

当我们使用FileReference浏览文件时,我们如何获得文件的绝对路径或文件的"nativePath"(我们在Flex/AIR中称之为)?

我知道有与此相关的安全问题,但有任何黑客攻击或是否有我不知道的直接解决方案?

请帮帮我.

谢谢.

apache-flex file

3
推荐指数
1
解决办法
9922
查看次数

使用cakephp中模型类的控制器方法

在我的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()..

请指导.

谢谢

cakephp model

2
推荐指数
1
解决办法
5238
查看次数

将magento升级到最新版本

我目前正在使用Magento社区版,版本1.7.0.0,并且由于主要的安全漏洞修复,Magento推荐,我想升级我的应用程序以使用最新版本1.7.0.2.

升级magento版本的最佳方法是什么?

我知道有一些方法,如命令行升级和使用Magento Connect Manager,但不知道哪些以及如何使用.

谢谢

upgrade magento

2
推荐指数
1
解决办法
4705
查看次数