$file_name krijgt nergens een waarde in de code die je hebt gepost.quote:Op maandag 15 januari 2007 22:41 schreef wonderer het volgende:
Even iets anders:
[ code verwijderd ]
Dit werkt ineens niet meer. Niks veranderd verder... Hij komt dus uit op de foutmelding terwijl ik niks anders doe dan anders. Waar ligt dat aan?
Daar geef je aan $_POST["file"] een waarde. Andersom werkt het vast beter. Overigens ontbreekt dan hier nog wel de input-controle, wat weer voor veiligheidsproblemen kan zorgen.quote:Op maandag 15 januari 2007 22:56 schreef wonderer het volgende:
$_POST["file"]=$file_name;
Moet dat andersom dan? Het heeft tot op heden altijd gewerkt... Ik snap het even niet meer.
quote:Op maandag 15 januari 2007 23:17 schreef wonderer het volgende:
Ik heb even op php.net rondgeneusd en het bleek dat ik weer een beetje achterliep wat betreft dingen. $_FILES enzo schijnt beter te werken en mijn script doet het weer. Met je tijd meegaan is blijkbaar belangrijk
In ieder geval bedankt voor het meedenken.
Super globals werken niet eens meer op mijn server, dus ik moet een zooi scripts aanpassenquote:Op dinsdag 16 januari 2007 09:12 schreef Swetsenegger het volgende:
[..]
eh, ik denk dat je nu aan super globals refereerd en juist die zijn niet aanbevolen. Gewoon $_POST['formuliernaam'] gebruiken dus inplaats van $formuliernaam
-edit- wel het script bekijken swets. Ja voor geuploade bestanden gebruik je $_FILES[name][tempname]
De 'snelheid' is afhankelijk van de queries die je draait dus het zou nogal handig zijn als je die even laat zienquote:Op dinsdag 16 januari 2007 17:42 schreef Chandler het volgende:
Klein vraagje.
Een website werkt een database die tabellen linkt met varchars ipv id's en nu heb ik de tabellen omgezet naar id's ipv varchars... echter is de snelheid met 100% gedaald... het gaat om vele tabellen en natuurlijk heel veel data (50.000 records voor 1 tabel, in totaal meer dan 100.000 records).
Waar zou dit aan kunnen liggen? de ID's zijn geindexeerd....
Superglobals zijn dingen als $_POST en $_GET, het lijkt me dat die nog wel werkenquote:Op dinsdag 16 januari 2007 16:44 schreef wonderer het volgende:
[..]
Super globals werken niet eens meer op mijn server, dus ik moet een zooi scripts aanpassen
Een gebrek aan juiste indices en MySQL die om één of andere bizarre reden besluit dat een JOIN op een VARCHAR 4x zo snel dient te gaan als een JOIN op een INT, beiden zonder gerelateerde index.quote:Op dinsdag 16 januari 2007 23:02 schreef SuperRembo het volgende:
Wat was 't probleem nou uiteindelijk,
Het aanmaken van de juiste indices.quote:en wat de oplossing?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | if (is_dir("gallery/".$_POST['gallery_name'])){ error("Deze map bestaat al. Kies een andere naam."); }else{ $new_dir = "gallery/".$_POST['gallery_name']; // hoofdmap aanmaken mkdir($new_dir, 0777); // gallery bestanden kopieren chmod($new_dir, 0777); copy("files/gallery.xml", $new_dir."/"); // mappen thums en images aanmaken mkdir($new_dir."/thumbs", 0777); mkdir($new_dir."/images", 0777); } } |
Wat voor 'fout over rechten' krijg je precies?quote:Op woensdag 17 januari 2007 23:05 schreef markiemark het volgende:
ok, probleempje met chmod en zo.
Via een formuliertje kan men een naam opgeven voor een nieuwe map, wanneer dit fomulier gepost wordt, wordt de map aangemaakt, inclusief twee standaard submappen. dit gaat allemaal goed. nu wil ik in de nieuw aangemaakte map drie bestanden laten kopieren met de functie copy, maar deze geeft een fout over rechten. terwijl ik toch echt de rechten voor de map op 777 heb staan. iemand die dit probleem kent, en vooral een oplossing weet?! Hieronder de code
[ code verwijderd ]
quote:<script type="text/javascript">
<!--
var Tree = new Array;
// nodeId | parentNodeId | nodeName | nodeUrl
Tree[0] = "1|0|Page 1|#";
Tree[1] = "2|1|Page 1.1|#";
Tree[2] = "3|1|Page 1.2|#";
Tree[3] = "4|3|Page 1.2.1|#";
Tree[4] = "5|1|Page 1.3|#";
Tree[5] = "6|2|Page 1.1.1|#";
Tree[6] = "7|6|Page 1.1.1.1|#";
Tree[7] = "8|6|Page 1.1.1.2|#";
Tree[8] = "9|1|Page 1.4|#";
Tree[9] = "10|9|Page 1.4.1|#";
Tree[10] = "11|0|Page 2|#";
//-->
</script>
Ah, chmodden op een Windows-systeem, altijd leuk.quote:Op woensdag 17 januari 2007 23:10 schreef markiemark het volgende:
PHP Warning: copy(gallery/dfgdsfg/) [function.copy]: failed to open stream: Permission denied in c:webfotoindex.php on line 39
Dáár zit het hele probleem, in de regel met die functie. Zorg er eerst eens voor dat $dirs in alle gevallen (dus ook als je de functie niet-recursief aanroept bijvoorbeeld) een array is. Vervolgens moet je eens gaan debuggen: waar zoek je eigenlijk op met array_search(), wat staat er op dat moment in de array, etcquote:Op woensdag 17 januari 2007 23:45 schreef mschol het volgende:
met array_search krijg ik de melding dat het 2de argument een verkeerde datatype is
hmmz ohja dat levert nogal problemen op he, op een windows server.. het kutte is dat de server van mijn hosting bedrijf ook op windows draait..quote:Op woensdag 17 januari 2007 23:49 schreef JeRa het volgende:
[..]
Ah, chmodden op een Windows-systeem, altijd leuk.
Ik heb niet veel verstand van bestandsrechten op NTFS, maar weet je zeker dat de webserver als een gebruiker draait die in die nieuwe mappen kan? Je kunt bij de eigenschappen van die mappen in het tabblad Security zien welke gebruikers(groepen) toegang hebben tot de mappen.
Ik heb 0,0 ervaring met Windows-servers, dus het enige wat ik je op dit moment kan aanraden is contact opnemen met je hoster om gezamenlijk tot een oplossing te komenquote:Op woensdag 17 januari 2007 23:56 schreef markiemark het volgende:
[..]
hmmz ohja dat levert nogal problemen op he, op een windows server.. het kutte is dat de server van mijn hosting bedrijf ook op windows draait..
is er een andere oplossing?
Het probleem is dat die modes normaal gesproken worden gebruikt in combinatie met de systeemfunctie (niet PHP dus) chmod(). Windows heeft die functie niet, dus er moet in PHP een conversie plaats vinden van octal mode number naar rechtenquote:Op donderdag 18 januari 2007 00:03 schreef markiemark het volgende:
De nieuw gemaakte mappen staan inderdaad op alleen lezen in windows, terwijl ik toch aangeef dat deze bij het aanmaken op 777 moeten staan..
met 666 werkt het ook niet. als ik een octale vertaling van 666 of 777 invoer, moet het dan wel werken dacht jij?quote:Op donderdag 18 januari 2007 00:07 schreef JeRa het volgende:
[..]
Het probleem is dat die modes normaal gesproken worden gebruikt in combinatie met de systeemfunctie (niet PHP dus) chmod(). Windows heeft die functie niet, dus er moet in PHP een conversie plaats vinden van octal mode number naar rechten
Ik lees in de comments van chmod() dat voor iemand het alleen werkte als je 0666 gebruikte op een Windows machine. Dat zou je eventueel nog kunnen proberen.
Nee, je moet sowieso octale getallen gebruiken (dus 0666 en 0777), dan voert PHP die omzetting naar decimale representatie zelf uit.quote:Op donderdag 18 januari 2007 00:10 schreef markiemark het volgende:
[..]
met 666 werkt het ook niet. als ik een octale vertaling van 666 of 777 invoer, moet het dan wel werken dacht jij?
hehe geeft inderdaad dezelfde fout als ik de 0 weg laat..quote:Op donderdag 18 januari 2007 00:16 schreef JeRa het volgende:
[..]
Nee, je moet sowieso octale getallen gebruiken (dus 0666 en 0777), dan voert PHP die omzetting naar decimale representatie zelf uit.
Echter schrijft die persoon in de comments dat het voor Windows alleen werkte als je het zonder die 0 schreef, maar die comment komt uit 2001 dus de kans is ontzettend groot dat dat in ieder geval niet meer klopt.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |