小编Vip*_*rma的帖子

如何在Javascript中创建异步函数?

看看这段代码:

<a href="#" id="link">Link</a>
<span>Moving</span>

$('#link').click(function () {
    console.log("Enter");
    $('#link').animate({ width: 200 }, 2000, function() {
         console.log("finished");            
    });    
    console.log("Exit");    
});
Run Code Online (Sandbox Code Playgroud)

正如您在控制台中看到的那样,"animate"函数是异步的,它"分叉"事件处理程序块代码的流程.事实上 :

$('#link').click(function () {
    console.log("Enter");
    asyncFunct();
    console.log("Exit");    
});

function asyncFunct() {
    console.log("finished");
}
Run Code Online (Sandbox Code Playgroud)

按照块代码的流程!

如果我想创建我function asyncFunct() { }的这种行为,我怎么能用javascript/jquery做到这一点?我认为这是不使用的策略 setTimeout()

javascript jquery asynchronous function

136
推荐指数
7
解决办法
20万
查看次数

插入数据库php后,表情符号显示为问号

我知道这之前已经被问过很多次了,我几乎尝试了所有这些,但结果有所不同,所以请继续阅读!不要投反对票!正如我所说,我已经尝试了大多数解决方案!

我使用 utf8mb4 作为编码,character_set_connection 和 character_set_database 已设置为 utf8mb4。我网页中的字符集设置为 utf8。我使用过 PDO,当我打开与数据库的连接时,我使用 utf8mb4 作为字符集。表中的列也有 utf8mb4_unicode_ci 作为排序规则。使用的存储引擎是 MyISAM。

出现差异是因为我无法编辑 character_set_server(因为我在共享主机上),它默认设置为 utf8,默认情况下 collat​​ion_server 是 utf8_unicode_ui。我不能以任何方式改变这些。它在具有类似字符变量的 localhost 上运行良好。

编辑:
连接变量是 $conn 被打开
$db_server = 'localhost'; $db_name = 'userdb'; $db_encoding = 'utf8mb4'; $db_user = 'test'; $db_pass = 'password'; $conn = new PDO('mysql:host='.$db_server.';dbname='.$db_name.';charset='.$db_encoding,$db_user,$db_pass);
为获取输入的表单很简单
<form action="" method="POST" accept-charset="UTF-8"><input type="text" class="form-control" name="inp"></form>
并且输入被处理为
$test = $_POST['inp']; $it = $conn->prepare("INSERT INTO tbl_test(message) VALUES(?)"); $it->bindParam(1,$test,PDO::PARAM_STR); if($it->execute()) echo $test; else echo 'Error!';

那么问题来了:
1. 为什么我尽可能使用了utf8mb4和utf8mb4_unicode_ci,还是会出现这个问题?
2.这可能是一个 php 问题而不是一个 MySQL 问题,因为问题发生在数据库中的 INSERTION …

php mysql unicode utf-8 utf8mb4

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

标签 统计

asynchronous ×1

function ×1

javascript ×1

jquery ×1

mysql ×1

php ×1

unicode ×1

utf-8 ×1

utf8mb4 ×1