Medien Upload in benutzerdefinierte database und benutzerdefiniertes Verzeichnis

Ich fing an, ein Plugin zu entwickeln. Ich wollte ein Formular behalten, wo der Benutzer einen Eingabetext und ein Video / Bild zur Webseite senden kann. Das Bild sollte in den Ordner eingehen und die URL des Bildes / Videos sollte in die database eingehen. Ich habe den folgenden Code ausprobiert, aber es funktioniert nicht.

$title=$_POST["title"]; $tags=$_POST["tags"]; $filetmp=$_FILES["file"]["tmp_name"]; $filename=$_FILES["file"]["name"]; $filetype=$_FILES["file"]["type"]; $filepath="if_images/".$filename; move_uploaded_file($filetmp,$filepath); $sql="INSERT into imageupload(title,tags,imagepath) values('$title','$tags','$filepath')"; if(mysqli_query($conn,$sql)) { echo "inserted"; } 

Solutions Collecting From Web of "Medien Upload in benutzerdefinierte database und benutzerdefiniertes Verzeichnis"

Ich nehme an, Sie haben die Tabelle imageupload nicht erstellt oder können den Ordner if_images in Ihrem Plugin-Ordner erstellen.

Als Vorschlag empfehle ich Ihnen, eingebaute WordPress-functionen und WordPress-Tabellen zu verwenden oder eine Tabelle für die Plugin-Aktivierung zu erstellen.

Um eine neue Tabelle zu erstellen, verwenden Sie die function dbDelta . Wenn Sie Benutzerdateien hochladen möchten, verwenden Sie die gut dokumentierte function wp_handle_upload .

Beispielsweise:

 $uploadedfile = $_FILES['file']; $upload_overrides = array( 'test_form' => false ); $movefile = wp_handle_upload( $uploadedfile, $upload_overrides ); 

Mehr hier

Verwenden Sie $wpdb class, um eine neue Zeile in Ihrer database zu erstellen.