小编Way*_*man的帖子

INSERT和返回ID,或者如果DUPLICATE KEY返回MySQL中的现有ID

我有一个"标签"表,在"标签"列上有一个UNIQUE,以防止重复.

我有一个"bookmarks_tags"表,它将书签与标签相关联,并且在"bookmark_id"和"tag_id"列上有一个UNIQUE,以防止重复.

但是,我需要人们能够添加相同的标签,为了实现这一点,我需要一些方法来检索现有标签的ID,以用作"bookmarks_tags"表中的参考.

有没有办法编写INSERT,这样如果它检测到重复,它会返回该副本的ID?或者,INSERT ... SELECT是否更适合"bookmarks_tags"表?

这里的关键是它必须在两种条件下工作; 添加为新的,或检索旧的.

此外,LAST_INSERT_ID()在此方案中无用,因为可以随时添加相关标签.

有任何想法吗?

mysql

9
推荐指数
2
解决办法
7052
查看次数

FPDF和欧元符号的问题

我花了几天时间筛选各种方法来鼓励FPDF渲染欧元符号,但没有一个成功.我有:

$currency = iconv("UTF-8", "ISO-8859-1//TRANSLIT", '€');
Run Code Online (Sandbox Code Playgroud)

结果如下:

iconv()[function.iconv]:检测到输入字符串中不完整的多字节字符

我尝试了各种编码类型,但无济于事.

php pdf fpdf euro pdf-viewer

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

Vue.js 2:条件渲染无法正常工作

我在使用条件渲染时遇到问题,因为没有一个示例可以正常工作。

这是Vue代码:

Vue.component('sub-folder', {
    props: ['folder'],
    template: '#template-folder-item'
});

var buildFoldersList = new Vue({
    el: '#sub-folders',
    data: {
        foldersList: this.foldersList,
        foldersStatus: this.foldersStatus
    },
    created () {
        this.buildFolders()
    },
    methods: {
        buildFolders: function () {
            var self = this;
            $.ajax({
                url: base_url + 'api/folder/get_subfolders/' + browser_folder_id,
                method: 'POST',
                data: {
                    "folder_id": browser_folder_id
                },
                success: function (data) {
                    console.log("Data"); console.log(data.result);
                    self.foldersList = data.result;
                    self.foldersStatus = ( data.result.length > 0 ) ? true : false;
                },
                error: function (error) {
                    self.foldersStatus …
Run Code Online (Sandbox Code Playgroud)

javascript vuejs2

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

PHPExcel:无效的单元格坐标错误

我在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)

php mysql codeigniter phpexcel

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

Laravel 5.5 中的迁移:无法声明类,因为名称已被使用

在 Laravel 中运行迁移时出现错误:

PHP 致命错误:无法声明类 UpdateEnquiriesTable,因为该名称已在第 33 行的 /var/www/project/database/migrations/2018_01_17_160335_update_enquiries_table.php 中使用

做了一些研究后,我发现每个迁移文件都需要一个唯一的类名(我不记得之前提到过,但那可能是我)。

根据另一个问题,建议更改其中一个类的名称

但是其他人建议删除冲突的迁移

哪个是首选?假设两者都有效。

php laravel-5 laravel-artisan

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

通过jQuery滚动到外部点击的DIV内的锚点

我有一个滚动部门,其中包含按字母顺序分组的酒店列表.在这个分区之上,我有一个按字母顺序排列的链接索引,点击后,我想在分区内向上滚动相应的字母项.

我花了大约一个小时搜索网络并尝试各种技术,并没有找到任何能够满足我所需要的东西,或者至少我能理解的东西; 我不是jQuery的天才.

任何帮助将不胜感激!

html jquery

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

Docker:在停止的容器中编辑“my.cnf”文件

对“my.cnf”进行编辑后,当我尝试启动容器时,我现在从 Mac 上的 Kitematic 收到错误消息:

mysqld: [ERROR] Found option without preceding group in config file /etc/mysql/my.cnf at line 19! mysqld: 
        [ERROR] Fatal error in defaults handling. Program aborted!
Run Code Online (Sandbox Code Playgroud)

我尝试通过以下方式访问容器:

docker exec -it [container] bash
Run Code Online (Sandbox Code Playgroud)

...但我收到错误:

Error response from daemon: Container [container] is not running
Run Code Online (Sandbox Code Playgroud)

我能够通过图像访问某些内容,但文件似乎不一样,所以我不确定发生了什么(我不太熟悉 Docker)。

在这个阶段,进行适当的编辑和修复容器,或者以某种方式将 MySQL 数据克隆到另一个容器是理想的。

mysql docker

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

Google 地图地理编码和 ZERO_RESULTS

我已经将不久前为另一个 Web 应用程序编写的代码用于另一个 Web 应用程序。但是,由于没有明显的原因,它没有检索结果:

\n\n
\n

由于以下原因,地理编码未成功:ZERO_RESULTS

\n
\n\n

我有以下代码,其中 \xe2\x80\x94 暗示 \xe2\x80\x94 在其他地方正常运行:

\n\n
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>\n<script type="text/javascript">\n    function googleMaps (lat, lng, zoom) {\n        geocoder = new google.maps.Geocoder();\n        var myLatlng = new google.maps.LatLng(lat, lng);\n        var myOptions = {\n            zoom: zoom,\n            center: myLatlng,\n            mapTypeId: google.maps.MapTypeId.TERRAIN\n        }\n        map = new google.maps.Map(document.getElementById("map-locations"), myOptions);\n        var marker = new google.maps.Marker({\n            position: myLatlng,\n            map: map\n        });\n        google.maps.event.addListener(map, "center_changed", function(){\n            document.getElementById("latitude").value = map.getCenter().lat();\n            document.getElementById("longitude").value = map.getCenter().lng();\n            marker.setPosition(map.getCenter());\n            document.getElementById("zoom").value = map.getZoom();\n        });\n        google.maps.event.addListener(map, "zoom_changed", function(){\n            document.getElementById("zoom").value …
Run Code Online (Sandbox Code Playgroud)

jquery google-maps

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

Voyger for Laravel 5:错误的图像路径

通过Voyager创建了新用户后,该头像显示为损坏的图像。我上传了新图像,但是图像仍然损坏。

我在Google Chrome浏览器中通过控制台进行了检查,发现3404错误:

2017-06-19 10:53:50.159 http:// localhost:8888 / storage / users / June2017 / ypKlbqbATDbpnYctZBFp.png 加载资源失败:服务器响应状态为404(未找到)

2017-06-19 10:53:50.256 http:// localhost:8888 / storage / users / June2017 / ypKlbqbATDbpnYctZBFp.png 加载资源失败:服务器响应状态为404(未找到)

2017-06-19 10:53:50.473 http:// localhost:8888 / vendor / tcg / voyager / assets / images / bg.jpg加载资源失败:服务器响应状态为404(未找到)查看该项目,这2个存储错误的路径为:http:// localhost:8888 / storage / app / public / users /和: http:// localhost:8888 / storage / app / public / users / June2017

在媒体中浏览文件夹时,我遇到类似的路径问题:

2017-06-19 11:38:22.248%7B%7B%20selected_file.path%20%7D%7D:1 GET http:// localhost:8888 / development / PhpstormProjects …

php laravel-5 voyager

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

在MySQL中通过INNER JOIN查询出现<>问题

我正在尝试按名称查找标记,但只有在关系表中不存在对它的引用时:

SELECT
    tags.tag_id, tags.tag
FROM
    tags
INNER JOIN
    bookmarks_tags
ON
    (bookmarks_tags.user_id = tags.user_id)
WHERE
    (tags.user_id = '1')
AND
    (tags.tag LIKE '%Jose%')
AND
    (bookmarks_tags.tag_id NOT IN (tags.tag_id))
GROUP BY tags.tag_id
Run Code Online (Sandbox Code Playgroud)

我已经尝试了"!=","<>"以及上面的组合,几乎我能想到的每一个排列,但没有排除"Jose",他们应该这样做,因为标签出现在"标签"中"table,和"bookmarks-tags"表,其中包含引用.

有任何想法吗?

mysql

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

Laravel 5.5:会话无法正常工作

我正在Session::put('client', $id);设置一个会话值,该值将持续存在于控制器内以及应用程序中的其他位置,但通过Vue通过API路由调用的控制器除外。

此后,我'driver' => env('SESSION_DRIVER', 'database')对“ session.php”文件进行了编辑:,并使用php artisan session:table来创建“ sessions”表,该表没有任何更改,并且无论我做什么,该表本身都没有任何更改其他会话变量。

我已经在控制器中尝试过:$request->session()->get('client')session('client')和::Session::get('client')这首先会触发错误(请阅读下一段),或者什么都不返回。

我尝试过:Session::put('client', $id); Session::save();这也没做任何事。

我试过:print_r( $request->session()->all() );从控制器内,但出现错误:

“未根据请求设置会话存储。”

我在方法的父类上方声明“会话”。

有任何想法吗?

php session laravel-5

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

如何在jQuery中向.append()数据添加click事件?

好吧,关于我的jQuery(我正在学习),我已经把自己画成了一个角落.

在HTML中我有:

<div class="folders-hierarchy">
    <ul id="folders-hierarchy"></ul>
</div>
Run Code Online (Sandbox Code Playgroud)

而jQuery是:

$(document).ready(function(){
    function get_folders_hierarchy () {
        var folder_id = ($(this).attr("data-folder") == false) ? 0 : $(this).attr("data-folder");
        $.ajax({
            url: base_url + "folders/jq_get_folders_hierarchy/" + 0,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            cache: false,
            success: function (element) {
                for (var i=0;i<element.length;i++) {
                    $("#folders-hierarchy").append('<li data-folder="' + element[i].folder_id + '">' + element[i].name + '</li>');
                }
            }
        });
    }
    get_folders_hierarchy();
});
Run Code Online (Sandbox Code Playgroud)

虽然这一切都适用于第一次运行,但我需要在.append()函数中向未编号的列表项添加一个click事件.可悲的是,我不知道怎么做.

您知道,我正在尝试创建一个文件夹选择器,其中未编号的列表旨在呈现.

jquery

0
推荐指数
1
解决办法
906
查看次数