Autor | Zpráva | ||
---|---|---|---|
marek888 Profil |
#1 · Zasláno: 26. 2. 2015, 13:26:04
Dobrý den. Chtěl bych udělat kód, který mi nahraje obrázek na server a zapíše do databáze cestu. Tu je můj kód:
<?php // konfigurace $uploadDir = './obrazky'; // adresar, kam se maji nahrat obrazky (bez lomitka na konci) $allowedExt = array('jpg', 'jpeg', 'png', 'gif'); // pole s povolenymi priponami // zpracovani uploadu if(isset($_FILES['obrazky']) && is_array($_FILES['obrazky']['name'])) { $counter = 0; $allowedExt = array_flip($allowedExt); foreach($_FILES['obrazky']['name'] as $klic => $nazev) { $fileName = basename($nazev); $tmpName = $_FILES['obrazky']['tmp_name'][$klic]; // kontrola souboru if( !is_uploaded_file($tmpName) || !isset($allowedExt[strtolower(pathinfo($fileName, PATHINFO_EXTENSION))]) ) { // neplatny soubor nebo pripona continue; } // presun souboru if(move_uploaded_file($tmpName, "{$uploadDir}".DIRECTORY_SEPARATOR."{$fileName}")) { ++$counter; } } if($counter > 0){ echo "<img src='obrazky/$nazev'>"; echo "<p>Bylo nahráno {$counter} z ".sizeof($_FILES['obrazky']['name'])." obrázků.</p>"; $db_host = "localhost"; $db_username = "root"; $db_pass = ""; $db_name = "adams"; mysql_connect($db_host, $db_username, $db_pass); mysql_select_db($db_name); $nazev = $_POST["url"]; mysql_query("insert into obrazky (url) '".mysql_real_escape_string($nazev)."')"); }else{ echo "<p>Někde nastala chyba! Nic se nanahrálo!</p>"; } } ?> Nevím si s tím moc rady, jinak nahrání a zobrazení obrázků funguje, jediné co nemohu rozjet, je zapisování do databáze. Tu dám ještě kód formu: <form method="post" enctype="multipart/form-data"> <input type="file" name="obrazky[]" multiple="multiple" /> <input type="submit" value="Nahrát" /> </form> |
||
Hando Profil |
#2 · Zasláno: 26. 2. 2015, 13:35:04
Ahoj.
Moc jsem to nestudoval, ale: marek888: „mysql_query("insert into obrazky (url) '".mysql_real_escape_string($nazev)."')");“ Funguje tento dotaz při samotném zápisu? Řekl bych, že ne, jelikož podoba dotazu by měla být takováto: INSERT INTO obrazky (url) VALUES ('bla bla bla') |
||
Fisir Profil |
|||
marek888 Profil |
Hando:
Díky moc, já jsem blbej, já jsem to vytahoval z jiného kódu a vůbec mě nenapadlo, že to tam má být, už to funguje, takže díky |
||
Hando Profil |
#5 · Zasláno: 26. 2. 2015, 16:10:46
Stane se. :)
Doporučuji v těchto případech vypsat si dotaz pomocí echa a zkusit ho rovnou pomocí konzole v admineru či phpMyAdminu. A asi přejít rovnou na mysqli, ať se neučíš zbytečně něco, co je zastaralé a má být z php odstraněno (byť to asi úplně brzo nehrozí). |
||
Časová prodleva: 9 let
|
0