• Inloggen
  • Registreer
  • Zoeken
Dit topic
  • Overal
  • Dit topic
  • Dit forum
  • Artikelen
  • Pagina's
  • Forum
  • Downloads
  • Meer opties

ICTscripters

Dé plek voor IT

Dé plek voor IT

Aanmelden

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • 🚀 WE ZOEKEN TESTERS! 🚀

    Servertjee 3 oktober 2026 om 10:56
  • Port Father: beta van een browsergame in Antwerpen 1931, feedback welkom

    Syntax 1 oktober 2026 om 11:11
  • Luchtvaartsoftware: Hoe technologie de moderne luchtvaart verandert

    saggy2829 30 september 2026 om 19:31
  • Hoe gebruiken jullie WhatsApp voor marketing en klantopvolging?

    aiqanobzfsej5 29 september 2026 om 12:55
  • [PROJECT] Gamekeuring.nl - Hét onafhankelijke keuringsplatform voor maffiagames & RPG's!

    frio 22 september 2026 om 16:40
  • Ictscripters / Koen

    Aaron 22 september 2026 om 15:07
  • Kweekrijk - van stekje tot Imperium

    Lijno 14 september 2026 om 23:00
  • Crimora.nl

    Jeffrey.Hoekman 8 september 2026 om 18:49

Marktplaats

  • Verschillende domeinen te koop (sommige hebben website / content)

    frio 2 oktober 2026 om 14:45
  • 295 Nieuwe Domeinnamen September 2026

    shiga 1 oktober 2026 om 19:09
  • Straatbaas.eu – complete Nederlandstalige en Engelstalige online maffia-RPG

    Jeroen.G 1 oktober 2026 om 17:48

PHP / PDO Bestand uploaden

  • thjeu
  • 25 november 2013 om 17:51
  • thjeu
    Developer
    Berichten
    500
    • 25 november 2013 om 17:51
    • #1

    Al opgelost!

    Hallo allemaal,


    Ik heb een script geschreven welke bepaalde data moet opslaan in de database en ook een bestand op de server moet uploaden.


    De gegevens die worden opgeslagen zijn: city_name, city_slug en city_plan. Nu slaat hij de eerste twee wel op, maar de laatste maar half. Hij zet namelijk enkel city-plans/ in de table.

    Code:

    add-city.php

    PHP
    <?php 
    include_once 'core/init.php';
    $general->logged_out_protect();
    
    
    $id = $user['id'];
    $users->is_owner($id);
    
    
    ?>
    <!doctype html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<link rel="stylesheet" type="text/css" href="css/style.css" >
    	<title>Add city</title>
    </head>
    <body>	
    	<div id="container">
    
    
    		<?php include 'includes/menu.php'; ?>
    
    
    		<h1>Add a city</h1>
    
    
    		<?php
    
    
    	    if (isset($_GET['success']) && empty($_GET['success'])) {
    	        echo '<h3>City has been added!</h3>';
    	        exit();
    	        	        
    	    } 
    	    else {
    
    
    	    	if(empty($_POST) === false) {
    
    
    	    		if (isset($_POST['city_name']) && empty($_POST['city_name'])){
    	    			$errors[] = 'Enter a city name';
    	    		}
    	    		if (isset($_POST['city_slug']) && empty($_POST['city_slug'])){
    	    			$errors[] = 'Enter a city slug';
    	    		}
    			
    			}
    
    
    			if(!empty($_POST) && empty($errors) === true) {
    
    
    				$name 			= $_FILES['city_plan']['name'];
    				$tmp_name 		= $_FILES['city_plan']['tmp_name'];	
    				$path 			= "city-plans";
    
    
    				move_uploaded_file($tmp_name, "$path/$name");
    
    
    				$city_name 	= htmlentities(trim($_POST['city_name']));
    				$city_slug 	= htmlentities(trim($_POST['city_slug']));
    				
    				$city_plan	= 'city-plans/'.$name;
    
    
    				$cities->add_city($city_name,$city_slug,$city_plan);
    				
    				header('Location: add-city.php?success');
    				exit();
    					
    			}
    			else if (empty($errors) === false) {
    					echo '<p>' . implode('</p><p>', $errors) . '</p>';	
    				}
    	    }	
    
    
    	    ?>
    		<form action="" method="post">
    			<ul>
    
    
    	            <li>
    	                <h4>City name:</h4>
    	                <input type="text" name="city_name" id="city_name" value="">
    	            </li>
    	            <li>
    	                <h4>City slug:</h4>
    	                <input type="text" name="city_slug" id="city_slug" value="">
    	            </li>
    	            <li>
    	            	<h4>City plan:</h4>
    	            	<input type="file" name="city_plan" id="city_plan">
    	            </li>
    
    
    	        </ul> 
    
    
    	        <span>Save city:</span>
                <input type="submit" value="save">
    
    
            </form>
    		
    	</div>
    </body>
    Meer tonen

    Class:

    PHP
    public function add_city($city_name,$city_slug,$city_plan) {
    
    
    			$query	=	$this->db->prepare("INSERT INTO `cities` (`name`,`slug`,`background_plan`) VALUES (?,?,?)");
    
    
    			$query->bindValue(1, $city_name);
    			$query->bindValue(2, $city_slug);
    			$query->bindValue(3, $city_plan);
    
    
    			try {
    				$query->execute();
    			}
    			catch(PDOExeption $e) {
    				die($e->getMessage());
    			}
    
    
    		}
    Meer tonen

    Waarschijnlijk zie ik door de bomen het bos niet meer... Maar wie weet wat ik fout doe?

    EDIT: Ik zag inderdaad door het bomen het bos niet meer! Ik was vergeten deze line toe te voegen aan de <form>

    PHP
    enctype="multipart/form-data"

    TwistedMonkey - Media Productions

    Bewerkt 2 keer, laatst door thjeu (25 november 2013 om 18:19).

  • Gast, wil je besparen op je domeinnamen? (ad)
  • ismail123
    Advanced programmer.
    Berichten
    678
    • 26 november 2013 om 01:14
    • #2

    Mijn manier van werken is meestal beginnen bij de front-end opmaak, zodat ik weet waar ik op bouw/programmeer.
    Zodat ongevallen als deze niet voorkomen, maar wel script ongevallen die duidelijk op te merken zijn.

    Misschien dat je daar iets nuttigs uit kan halen.

    Succes bro :thumbup:

    Met vriendelijke groet,
    Ismail
    enthousiaste game developer

  • WHMCSAddons
    Meester
    Berichten
    2.411
    • 26 november 2013 om 01:35
    • #3

    Ik hoop dat dit slechts een begin is van de code, aan de upload te zien wordt er niks gecontroleerd en kan ik zonder pardon alle bestandsformaten uploaden.

    Probeer overigens foutmeldingen te voorkomen, wanneer je move_uploaded_file doet kan je dit beter in een if statement plaatsen.
    Als hij daarin faalt kan je nog een nette melding naar je gebruikers toe plaatsen, anders krijg je een lelijke PHP error wat je gebruikers kan afschrikken.


    Mocht je meer advies nodig hebben weet je me te vinden, succes! :)

  • thjeu
    Developer
    Berichten
    500
    • 26 november 2013 om 13:01
    • #4

    Klopt, dit is inderdaad slechts het begin van het script. Echter is het wel zo dat enkel de user met admin rank deze pagina kan bezoeken. Bedankt voor de tips!

    TwistedMonkey - Media Productions

Registratie

Nog geen account? Registreer je nu en word deel van onze community!

Nu registreren Aanmelden

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacyverklaring
  10. Contact
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen | Beste Zetes eid kaartlezer webshop
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design