Inhaltsverzeichnis
回复讨论(解决方案)
Heim Backend-Entwicklung PHP-Tutorial jquery-file-upload 的php mysql插入问题

jquery-file-upload 的php mysql插入问题

Jun 23, 2016 pm 01:51 PM
mysql php 插入

最近用jquery-file-upload 来改善网站上传的体验

https://github.com/blueimp/jQuery-File-Upload/wiki/PHP-MySQL-database-integration
上传时按照他的参考文档,立马就完成了,一开始也按照他的sql 架构先试试

结果上传后,也能成功插入,json传回页面一切正常!

但问题来了,他的sql 架构...有个叫url

但作者好像在PHP的SQL中没有处理

那我就改改吧,....

先新增了一些基本配置

$dir = $_COOKIE["uid"].'/'.date("Y").'/'.date("m").'/'.date("d").'/';$dirUP =  "../../../att/".$dir;$dirLink =  $dir;$options=array(    'upload_dir' => $dirUP,    'upload_url' => $dirLink,    'delete_type' => 'POST',    'db_host' => 'localhost',    'db_user' => 'root',    'db_pass' => '*****',    'db_name' => '*****',    'db_table' => 'files');
Nach dem Login kopieren



应该就是这段了....

我尝试多次,加入url字段都不成功 [原本的文档代码]
    protected function handle_file_upload($uploaded_file, $name, $size, $type, $error,            $index = null, $content_range = null) {        $file = parent::handle_file_upload(            $uploaded_file, $name, $size, $type, $error, $index, $content_range        );        if (empty($file->error)) {            $sql = 'INSERT INTO `'.$this->options['db_table']                .'` (`name`, `size`, `type`, `title`, `description`)'                .' VALUES (?, ?, ?, ? , ?)';            $query = $this->db->prepare($sql);            $query->bind_param(                'sisss',                $file->name,                $file->size,                $file->type,                $file->title,                $file->description            );            $query->execute();            $file->id = $this->db->insert_id;        }        return $file;    }
Nach dem Login kopieren


都给我显示:
Warning: mysqli_stmt::bind_param(): Number of elements in type definition string doesn't match number of bind variables in

这是什么意思,说我的数量有问题? 是指我加少了吗?
我已经改成...这样,5处的type字段也都加了url也说是数量问题?

    protected function handle_file_upload($uploaded_file, $name, $size, $type,$url, $error,            $index = null, $content_range = null) {        $file = parent::handle_file_upload(            $uploaded_file, $name, $size, $type,$url, $error, $index, $content_range        );        if (empty($file->error)) {            $sql = 'INSERT INTO `'.$this->options['db_table']                .'` (`name`, `size`, `type`, `url`, `title`, `description`)'                .' VALUES (?, ?, ?, ?,? , ?)';            $query = $this->db->prepare($sql);            $query->bind_param(                'sisss',                $file->name,                $file->size,                $file->type,                $file->url,                $file->title,                $file->description            );            $query->execute();            $file->id = $this->db->insert_id;        }        return $file;    }
Nach dem Login kopieren


我需要保存成
$url = $_COOKIE["uid"].'/'.date("Y").'/'.date("m").'/'.date("d").'/'. filename

要怎么改? 直接用$file->url就可以吗?




另外...因为这玩意,还弄到一个append取值问题,熟jq的朋友也可以去这帮帮小弟吧
http://bbs.csdn.net/topics/390862894


回复讨论(解决方案)

警告:mysqli_stmt::bind_param():在类型定义字符串不匹配的绑定变量的元素个数
这还不清楚吗?
$query->bind_param(
                ' sisss', //怎么只有 5 个类型声明?
                $file->name, //1
                $file->size, //2
                $file->type, //3
                $file->url, //4
                $file->title,//5
                $file->description //6 共6个
            );

警告:mysqli_stmt::bind_param():在类型定义字符串不匹配的绑定变量的元素个数
这还不清楚吗?
$query->bind_param(
                ' sisss', //怎么只有 5 个类型声明?
                $file->name, //1
                $file->size, //2
                $file->type, //3
                $file->url, //4
                $file->title,//5
                $file->description //6 共6个
            );


喔...原来这个问题

已成功解决了!

以前用完mysql_query后就转用pdo了,没用过mysqli,PDO好像就没怎么提过这写法

谢谢,学习了
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Java-Tutorial
1663
14
PHP-Tutorial
1264
29
C#-Tutorial
1237
24
MySQL und PhpMyAdmin: Kernfunktionen und Funktionen MySQL und PhpMyAdmin: Kernfunktionen und Funktionen Apr 22, 2025 am 12:12 AM

MySQL und PhpMyAdmin sind leistungsstarke Datenbankverwaltungs -Tools. 1) MySQL wird verwendet, um Datenbanken und Tabellen zu erstellen und DML- und SQL -Abfragen auszuführen. 2) PHPMYADMIN bietet eine intuitive Schnittstelle für Datenbankverwaltung, Tabellenstrukturverwaltung, Datenoperationen und Benutzerberechtigungsverwaltung.

Die Kompatibilität von IIS und PHP: ein tiefer Tauchgang Die Kompatibilität von IIS und PHP: ein tiefer Tauchgang Apr 22, 2025 am 12:01 AM

IIS und PHP sind kompatibel und werden durch FASTCGI implementiert. 1.Iis leitet die .php -Dateianforderung über die Konfigurationsdatei an das FastCGI -Modul weiter. 2. Das FastCGI -Modul startet den PHP -Prozess, um Anforderungen zur Verbesserung der Leistung und Stabilität zu verarbeiten. 3. In den tatsächlichen Anwendungen müssen Sie auf Konfigurationsdetails, Fehlerdebuggen und Leistungsoptimierung achten.

Erklären Sie den Zweck von Fremdschlüssel in MySQL. Erklären Sie den Zweck von Fremdschlüssel in MySQL. Apr 25, 2025 am 12:17 AM

In MySQL besteht die Funktion von Fremdschlüssel darin, die Beziehung zwischen Tabellen herzustellen und die Konsistenz und Integrität der Daten zu gewährleisten. Fremdeschlüssel behalten die Wirksamkeit von Daten durch Referenzintegritätsprüfungen und Kaskadierungsvorgänge bei. Achten Sie auf die Leistungsoptimierung und vermeiden Sie bei der Verwendung häufige Fehler.

Vergleichen und kontrastieren Sie MySQL und Mariadb. Vergleichen und kontrastieren Sie MySQL und Mariadb. Apr 26, 2025 am 12:08 AM

Der Hauptunterschied zwischen MySQL und Mariadb ist Leistung, Funktionalität und Lizenz: 1. MySQL wird von Oracle entwickelt und Mariadb ist seine Gabel. 2. Mariadb kann in Umgebungen mit hoher Last besser abschneiden. 3.MariADB bietet mehr Speichermotoren und Funktionen. 4.Mysql nimmt eine doppelte Lizenz an, und Mariadb ist vollständig Open Source. Die vorhandene Infrastruktur, Leistungsanforderungen, funktionale Anforderungen und Lizenzkosten sollten bei der Auswahl berücksichtigt werden.

SQL gegen MySQL: Klärung der Beziehung zwischen den beiden SQL gegen MySQL: Klärung der Beziehung zwischen den beiden Apr 24, 2025 am 12:02 AM

SQL ist eine Standardsprache für die Verwaltung von relationalen Datenbanken, während MySQL ein Datenbankverwaltungssystem ist, das SQL verwendet. SQL definiert Möglichkeiten, mit einer Datenbank zu interagieren, einschließlich CRUD -Operationen, während MySQL den SQL -Standard implementiert und zusätzliche Funktionen wie gespeicherte Prozeduren und Auslöser bereitstellt.

Wie kann ich JavaScript -Objekte, die Funktionen und reguläre Ausdrücke in einer Datenbank und wiederherstellen, sicher speichern? Wie kann ich JavaScript -Objekte, die Funktionen und reguläre Ausdrücke in einer Datenbank und wiederherstellen, sicher speichern? Apr 19, 2025 pm 11:09 PM

Mit sicheren Funktionen und regulären Ausdrücken in JSON in der Front-End-Entwicklung ist JavaScript häufig erforderlich ...

Was passiert, wenn Session_Start () mehrmals aufgerufen wird? Was passiert, wenn Session_Start () mehrmals aufgerufen wird? Apr 25, 2025 am 12:06 AM

Mehrere Anrufe bei Session_Start () führen zu Warnmeldungen und möglichen Datenüberschreibungen. 1) PHP wird eine Warnung ausstellen und veranlassen, dass die Sitzung gestartet wurde. 2) Dies kann zu unerwarteten Überschreibungen von Sitzungsdaten führen. 3) Verwenden Sie Session_Status (), um den Sitzungsstatus zu überprüfen, um wiederholte Anrufe zu vermeiden.

Wie unterscheidet sich MySQL von Oracle? Wie unterscheidet sich MySQL von Oracle? Apr 22, 2025 pm 05:57 PM

MySQL eignet sich für schnelle Entwicklung und kleine und mittelgroße Anwendungen, während Oracle für große Unternehmen und hohe Verfügbarkeitsanforderungen geeignet ist. 1) MySQL ist Open Source und einfach zu bedienen, geeignet für Webanwendungen und kleine und mittelgroße Unternehmen. 2) Oracle ist mächtig und für große Unternehmen und Regierungsbehörden geeignet. 3) MySQL unterstützt eine Vielzahl von Speichermotoren, und Oracle bietet reichhaltige Funktionen auf Unternehmensebene.

See all articles