php存数据到数据库,echo出来的sql可正常在mysql里执行但是放在php中执行却抱错,大神们
看代码
$title = $_POST["title"];
$metact_t = $_POST["metact_t"];
$acter = $_SESSION["user"];
$department = $_POST["department"];
$metinfo = $_POST["metinfo"];
$jb = $_POST["jb"];
$department_t = $_POST["department_t"];
获得传过来的参数,并作了输出测试没有问题
$title = iconv("utf-8","gbk",strip_tags($title));
$metact_t = iconv("utf-8","gbk",strip_tags($metact_t));
$acter = iconv("utf-8","gbk",strip_tags($acter));
$department = iconv("utf-8","gbk",strip_tags($department));
$metinfo = iconv("utf-8","gbk",strip_tags($metinfo));
$jb = iconv("utf-8","gbk",strip_tags($jb));
$status = iconv("utf-8","gbk",'未解决');
$department_t = iconv("utf-8","gbk",strip_tags($department_t));
$saveMeetingSql = "insert into t_metact(id,title,metact_t,acter,department,metinfo,jb,department_t,status)".
" values('$id','$title','$metact_t','$acter','$department','$metinfo','$jb','$department_t','$status')";
echo ($saveMeetingSql );
转码输出sql如下:
insert into t_metact(id,title,metact_t,acter,department,metinfo,jb,department_t,status) values('2','测试0908','2014-09-09','admin','网络部','ceshi','重大','网络部','未解决')
在sql管理器中可正常插入
php中报错输出错误:ncorrect string value: '\xB2\xE2\xCA\xD409...' for column 'title' at row 1意思应该是说title对应的测试0908不是正常的字符格式,数据库设计字段为varchar长度20,不知道问题出在哪了,望大神们指点
回复讨论(解决方案)
你向数据库发送的是 gbk 编码的串,而数据库默认的字符集并不是 gbk 的
所以数据库无法识别传入的串,因此出错
你的数据库编码是什么?
插入数据和数据编码要一致。
我估计也是编码器的问题
你向数据库发送的是 gbk 编码的串,而数据库默认的字符集并不是 gbk 的
所以数据库无法识别传入的串,因此出错
我转码出来的echo的sql是正常的啊,就是不清楚怎么就向数据库发成gbk的,应该是编码问题但就是不知道问题出在哪,我连接数据库的时候设置的编码utf8
你的数据库编码是什么?
插入数据和数据编码要一致。
数据库是utf8,插入的sql参数我都转过码了,echo的sql执行也没问题
1、在你的代码中并没有数据库操作的函数,所以我不知道你使用的是什么数据库。因此在回复中没有提出建议
2、你对传入的数据都做了形如 $title = iconv("utf-8","gbk",strip_tags($title)); 这样的操作,这就把 utf-8 编码转成了 gbk 编码
3、把错误信息中的 \xB2\xE2\xCA\xD409... 用 php 打印出来
echo "\xB2\xE2\xCA\xD409...";
就是 gbk 编码的 测试09...
4、如果你连接数据库时已经声明了使用 utf8,那么这些 gbk 编码数据是要因不属于 utf-8 范围而报错的

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Travailler avec la base de données dans CakePHP est très simple. Nous comprendrons les opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) dans ce chapitre.

Pour travailler avec la date et l'heure dans cakephp4, nous allons utiliser la classe FrozenTime disponible.

Pour travailler sur le téléchargement de fichiers, nous allons utiliser l'assistant de formulaire. Voici un exemple de téléchargement de fichiers.

Dans ce chapitre, nous allons apprendre les sujets suivants liés au routage ?

CakePHP est un framework open source pour PHP. Il vise à faciliter grandement le développement, le déploiement et la maintenance d'applications. CakePHP est basé sur une architecture de type MVC à la fois puissante et facile à appréhender. Modèles, vues et contrôleurs gu

Le validateur peut être créé en ajoutant les deux lignes suivantes dans le contrôleur.

Se connecter à CakePHP est une tâche très simple. Il vous suffit d'utiliser une seule fonction. Vous pouvez enregistrer les erreurs, les exceptions, les activités des utilisateurs, les actions entreprises par les utilisateurs, pour tout processus en arrière-plan comme cronjob. La journalisation des données dans CakePHP est facile. La fonction log() est fournie
