1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | $uploaddir = '/var/www/uploads/'; $uploadfile = $uploaddir . basename($_FILES['avatar']['name']); echo '<pre>'; if (move_uploaded_file($_FILES['avatar']['tmp_name'], $uploadfile)) { echo "Bestand is valide en is geupload \n"; } else { echo "dit bestand is niet valide! \n"; } echo 'Wat heb ik fout gedaan:'; print_r($_FILES); print "</pre>"; ?> |
dus eigenlijk werkt het script wel als ik het online zou plaatsen?quote:Op zondag 11 januari 2009 15:09 schreef GlowMouse het volgende:
move_uploaded_file werkt op je filesystem en localhost heb je niet op je filesystem.
Ja daar heb je totaal gelijk in.quote:Op zondag 11 januari 2009 15:13 schreef GlowMouse het volgende:
Dat script werkt prima ja. Hij zet het bestand op de lokatie $uploadfile, zie de documentatie bij move_uploaded_file.
Een zin als "en ik snap totaal niet hoe ik C:\bestand.jpg kan laten weergeven dat hij dat verplaatst" is onbegrijpelijk.
Wat heeft FTP hiermee te maken?
Ik bedoelde dan ook niet INTEGER vs TINYINT, maar een integer i.p.v. een string (het woord enum was toen helemaal nog niet gevallen). Het ging mij om het datatype.quote:Op vrijdag 9 januari 2009 20:12 schreef GlowMouse het volgende:
De integer die jij voorstelde was sowieso overdone om 0 of 1 op te slaan. Een tinyint voldoet dan al. En onder de byte per veld kom je niet, dus tinyint/enum is om het even en dan kies je natuurlijk de duidelijkste.
Als je dit nou terugleest, snap je dan zelf wel wat je schrijft?quote:Op zondag 11 januari 2009 15:22 schreef cablegunmaster het volgende:
[..]
Ja daar heb je totaal gelijk in.
ik bedoel hoe kan je een script een plaatje laten weergeven.
ik kies bijvoorbeeld C:\Glowmouse.jpg
en dan wil ik dat hij het weergeeft als C:\Glowmouse.jpg
ipv dat hij dat doet. Geeft hij Glowmouse.jpg weer.
op de localhost zelf ipv op C:\ hierdoor kan het plaatje niet weergegeven worden.
het plaatje hoeft niet verplaatst te worden![]()
weet niet of het mogelijk is![]()
ik bedoel dat hij het opslaat alsquote:Op zondag 11 januari 2009 18:01 schreef Xcalibur het volgende:
[..]
Als je dit nou terugleest, snap je dan zelf wel wat je schrijft?
Ik vermoed dat je het plaatje onder een andere naam wilt weergeven dan dat het opgeslagen is, door middel van een script? In dat geval moet je je eens gaan inlezen bij header() en file_get_contents()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | echo var_dump($_POST); if (isset($_POST['Submit'])) { if ($_POST['vnaam'] == "" ) { $error = "Voornaam is niet ingevuld<BR />"; } if ($_POST['anaam'] == "") { $error .= "Achternaam is niet ingevuld<BR />"; } if ($_POST['email'] == "" ) { $error .= "Uw email is niet ingevuld<BR />"; } if ($_POST['comment'] == "" ) { $error .= "U heeft geen commentaar ingevuld<BR />"; } if (strlen($_POST["vnaam"]) <= 2) { $error .= "Voornaam moet minstens 2 tekens bevatten<BR />"; } if (strlen($_POST["anaam"]) < 3) { $error .= "Achternaam moet minstens 3 tekens bevatten"; } //Als naam, leeftijd of land niet is ingevuld, is $error NIET leeg. if (!isset($error)) //als de variabele $error niet is aangemaakt ... { $naam = ucfirst($_POST["vnaam"]); $anaam = ucfirst($_POST["anaam"]); $email = $_POST["email"] ; $date = $_POST["email"]; $comment = $_POST["comment"]; $avatar = $_POST["avatar"]; $time = $_POST["datum"]; trim($naam); trim($anaam); strip_tags($naam); strip_tags($anaam); strip_tags($email); strip_tags($comment); strip_tags($avatar); // was ik later mee bezig weet niet of het werkt $uploaddir = 'localhost/phpweek/'; $uploadfile = $uploaddir . basename($_FILES['avatar']['name']); echo '<pre>'; if (move_uploaded_file($_FILES['avatar']['tmp_name'], $uploadfile)) { echo "Bestand is valide en is geupload \n"; } else { echo "dit bestand is niet valide! \n"; } echo 'Wat heb ik fout gedaan:'; print_r($_FILES); print "</pre>"; } */ echo $naam." ".$anaam." <br><a href=\"mailto:".$email."\">".$email."</a><br> <img src=\"".$_FILES['avatar']['name']."\"/><br> ".$time."<br>Uw commentaar:<br>".$comment; echo("<br><a href =\"".$_SERVER["PHP_SELF"] . "\">Nieuw commentaar toevoegen</a>"); } else { echo "Gelieve alle formuliervelden netjes in te vullen !<BR /><BR />"; echo "<FONT COLOR=\"#FF0000\">".$error."</FONT> <br><a href =\"".$_SERVER["PHP_SELF"] . "\">Probeer opnieuw</a>"; } } else { // als er niks ingevuld is word het gastenboek weergegeven net als het hoort. ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | <head> <title>Gastenboek</title> </head> <body> <h1>Schrijf een bijdrage in ons gastenboek!</h1> <form enctype="multipart/form-data" action="<?php echo($_server["php_self"]);?>" method="post"> <table border = "0"> <tr> <td align="right">Voornaam</td> <td><input type="text" name="vnaam" size='10'></td> </tr> <tr> <td align="right">Achternaam</td> <td><input type="text" name="anaam" size='10'></td> </tr> <tr> <td align="right">E-mailadres</td> <td><input type="text" name="email" size='10'></td> </tr> <tr> <td align="right">Avatar:</td> <td><input type="hidden" name="MAX_FILE_SIZE" value="30000" /><input type="file" name="avatar"></td> </tr> <tr> <td VALIGN="top">Uw bijdrage:</td> <td><textarea name="comment" size="255" rows="8"></textarea></td> </tr> <tr> <td><input type="hidden" name="datum" value="<?php echo(date("Y-m-d H:i:s")); ?>"> </td> <td><input type="Submit" name="Submit" value="Verzenden"<input type="reset" name="Reset" value="Leegmaken"></td> </tr> </table> </form> </table> |
1 2 3 | } ?> |
1 2 | </html> |
je mist het puntquote:Op zondag 11 januari 2009 18:18 schreef Farenji het volgende:
Je moet het plaatje gewoon in de http root opslaan en dan kun je in je html ernaar verwijzen als href="/plaatje.gif".
Twee of drie diep is zát voor 100.000 afbeeldingen. De eerste vier tekens van de bestandsnaam zorgen trouwens niet echt voor een uniforme verdeling over mappen, of je applicatie moet bestanden zelf een random naam geven.quote:Op zondag 11 januari 2009 22:30 schreef Roy_T het volgende:
Sterker nog, als het om echt heel veel bestanden gaat kun je beter meer subdirs maken. Voor een applicatie met honderdduizend+ afbeeldingen plaats ik een bestand met de naam igifgarioufglieruhg.jpg daarom in "file/i/g/i/f/igifgarioufglieruhg.jpg"; oftewel subdirs op basis van de eerste 4 karakters van de naam. Als je zoveel bestanden in één dir hebt staan, dan wil dat nog weleens vertragend werken op filesystem niveau.
Bij twee niveau's diep en letters voor het aangeven van de niveau's heb je 148 bestanden per map. Uitgaande van een uniforme verdeling, uiteraard.quote:Op zondag 11 januari 2009 22:42 schreef GlowMouse het volgende:
[..]
Twee of drie diep is zát voor 100.000 afbeeldingen. De eerste vier tekens van de bestandsnaam zorgen trouwens niet echt voor een uniforme verdeling over mappen, of je applicatie moet bestanden zelf een random naam geven.
Het is door randomization inderdaad uniform verdeeld. Ik had het over 100.000 plus, de kans is groot dat het er binnenkort een veelvoud van zijn. De details doen er eigenlijk ook niet toe; het was meer een "tip" over architectuur. Of je 2 of 4 niveau's diep wilt gaan kan van meerdere zaken afhangen natuurlijkquote:Op zondag 11 januari 2009 22:42 schreef GlowMouse het volgende:
Twee of drie diep is zát voor 100.000 afbeeldingen. De eerste vier tekens van de bestandsnaam zorgen trouwens niet echt voor een uniforme verdeling over mappen, of je applicatie moet bestanden zelf een random naam geven.
Vanaf wanneer gaat zoiets vertragend werken en wat is "vertragend"? Ik zit namelijk ook met tienduizenden afbeeldingen die momenteel nog in één map staan. De honderduizend afbeeldingen is naderend en geen idee hoe zich dit gaat houden als er nog tienduizenden afbeeldingen bij gaan komen. Kan iemand daar iets over zeggen?quote:Op zondag 11 januari 2009 22:30 schreef Roy_T het volgende:
Sterker nog, als het om echt heel veel bestanden gaat kun je beter meer subdirs maken. Voor een applicatie met honderdduizend+ afbeeldingen plaats ik een bestand met de naam igifgarioufglieruhg.jpg daarom in "file/i/g/i/f/igifgarioufglieruhg.jpg"; oftewel subdirs op basis van de eerste 4 karakters van de naam. Als je zoveel bestanden in één dir hebt staan, dan wil dat nog weleens vertragend werken op filesystem niveau.
Ah... oké, dan hoef ik me voorlopig geen zorgen te maken denk ik. Alleen dat laatste (openen in explorer) klopt inderdaad, dat gaat echt rete-traag. Maar dat hoeft gelukkig nooit te gebeuren.quote:Op maandag 12 januari 2009 12:10 schreef GlowMouse het volgende:
Die limieten komen volgens mij meer uit oude filesystems. Tegenwoordig heb je er geen enkel probleem mee, totdat je het mapje opent in bv explorer.
1 2 3 4 5 6 7 8 9 10 11 | sel = document.frm.select1.selectedIndex; if(sel){ document.frm.select2.remove(sel); //document.frm.select2.selectedIndex =0; }else{ document.frm.select2.options[sel] = new Option('???wat te doen????',2); } } |
quote:Op maandag 12 januari 2009 13:28 schreef Likkende_Lassie het volgende:
Even een javascript vraagje, heb het ook al gepost in een javascript voor dummies, maar volgens mij zijn die topics niet heel erg actief
De sitiutatie is als volgt:
- Ik heb meerdere select's op mijn pagina, met precies dezelfde waarde, alleen de naam van select is anders.
- Ik wil, dat zodra er één van de options wordt geselecteerd, in een willekeurige select, dat in elke select (behalve de huidige), de optie verdwijnt. Wordt de optie niet meer geselecteerd, dan moet hij weer overal verschijnen.
Duidelijk?
Dit heb ik al aan code:
[ code verwijderd ]
Eigenlijk zou hij alle select's op de pagina in een array moeten gooien, en vervolgens hier zn ding doen.
Wie o wie!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | error_reporting(E_ALL); mysql_connect("localhost", "root", "")or die("mysql_error"); mysql_select_db("opdracht1")or die("mysql_error"); $username = $_SESSION['username']; if (empty($_POST['submit'])) { Weet je zeker dat je je account wilt verwijderen? <br/> <form method="post" action=" $_SERVER['PHP_SELF'] "> Ja <input type="radio" name="accdel" value="ja"> Nee <input type="radio" name="accdel" value="nee"> <br/> <input type="submit" name="submit" value="Verwijder!"/> </form> } else { if ($_POST['accdel'] == "ja") { mysql_query("DELETE FROM `members` WHERE `username` = '".$username."'"); session_destroy(); echo "Uw account is succesvol verwijderd."; } else { header(profiel.php); } } ?> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |