Jump to content

Handige scripts uit 'html/php: site hulp'


Ewoud

Recommended Posts

Nee als je zonder extentie typt dan doe je het gewoon voor alle extenties of krijg je gewoon niets denk ik. Een map is geen bestand dus dat kan je niet downloaden omdat een server een map niet als een bestand ofzo interpreteert je zou gewoon een rar kunnen maken. Eventueel zou je wel een dynamische zip kunnen maken van de map, maar dan moet je veel geheugen enzo hebben en dat heb je niet altijd bij elke host ik denk dat 15 Mb standaard is en dat je dus niet groter zal kunnen gaan. Maar voor meer informatie kan je hier even kijken over zo'n dynamische zip (maar ik raad je aan gewoon zelf een archief aan te maken van een map met winRar).

zlib (Engels)

Ik weet eigenlijk niet wat ik verkeerd doe. Mijn host accepteerd .htaccess extensies en in mijn .htacces bestand staat het volgende
AddType application/octet-stream php
AddType application/octet-stream mp3
AddType application/octet-stream htm
AddType application/octet-stream exe
AddType application/octet-stream gif
AddType application/octet-stream png
AddType application/octet-stream jpg
AddType application/octet-stream bmp

Ik zet het .htacces bestand in het folder "downloads" ik upload een png-afbeelding en dan krijg ik het gewoon te zien in mijn browser als ik op de link druk www.website.com/downloads/afbeelding.png. Ik gebruik IE7 !

Link to comment
Delen op andere websites

  • Reacties 62
  • Created
  • Laatste reactie

Top Posters In This Topic

  • Argon

    12

  • Donald F. Duck

    8

  • marcootje

    8

  • Woetsha

    8

Aha, ik was de puntjes vergeten.

AddType application/octet-stream .php
AddType application/octet-stream .mp3
AddType application/octet-stream .htm
AddType application/octet-stream .gif
AddType application/octet-stream .png
AddType application/octet-stream .jpg
AddType application/octet-stream .bmp

Tevens hoef je exe erniet bij te zetten aangezien dat je dat niet in een browser kan uitvoeren... In iedergeval excuses omdat ik die stomme puntjes vergeten was :N Ik heb het voor de zekerheid ook getest en het werkt :*D

Bewerkt: door Argon
Link to comment
Delen op andere websites

  • 3 weken later...

Bedankt, Argon !

En ook zou ik het volgende willen doen vb:

jousite.com/afbeeldingen/

en in het folder afbeeldingen zit er geen index-bestand, maar wel andere bestanden. Nu zou ik in het folder afbeeldingen een index bestand plaatsen die er automatisch voor zorgt dat alle bestanden die in het folder afbeeldingen staan op die index pagina komen.

Het klinkt ingewikkeld, maar het is eenvoudig ! Alleen weet ik niet hoe ik dat moet doen !

Link to comment
Delen op andere websites

Als je webhost .htaccess ondersteund dan is dit simpel te doen door een bestand met de naam ".htaccess" in de map "/afbeeldingen" te plaatsen en in dat bestand de volgende code te zetten:

Options +Indexes
IndexOptions +FancyIndexing
IndexIgnore *.ext1 *.ext2

Als je de + in een - verandert wordt iets uitgeschakeld dus de eerste + zorgt ervoor dat je een lijst van bestanden toond en de 2de zorgt voor een "mooiere" lijst.

De extenties die je niet wil tonen moet je zo achter elkaar opsommen en dat kan dus handig zijn om *.html bestanden bijvoorbeeld niet te tonen. :Y

Link to comment
Delen op andere websites

Bedankt Argon ! Maar dat bedoelde ik niet. Het zal wel aan mijn post geweest zijn. Ik was niet duidelijk genoeg. Maar toch bedankt ^_^ !

Ik bedoelde dus dat als je geen index bestand hebt dat er automatisch een lijst komt van alle bestanden die daar in die map staan. Nu wou ik een script die automatisch de hele lijst eruit haalt.

Ik heb het ondertussen al gevonden, voor de geinteresseerde:

<pre> <? 
////READDIR.PHP/////

$dir="./"; ///Naam van de plaats

 if(eregi("\.\./",$_GET['dir'])){ 
  $_GET['dir']=""; 
 } 
 if($_GET['dir']){ 
  $dir=$dir."".$_GET['dir'].""; 
 } else { 
  $_GET['dir']=""; 
 } 
$data=scandir($dir); 
if($_GET['dir']){ 
if(eregi("/",$_GET['dir'])){ 
 $mappen=explode("/",$_GET['dir']); 
 $l = count($mappen)-2; 
 unset($mappen[$l]); 
 $up=implode("/",$mappen); 

} else { 
 $up=''; 
} 
echo "<a href='readdir.php?dir=".$up."'>UP</a>\r\n\r\n"; 
} else { 
 echo "UP\r\n\r\n"; 
} 
for($i=0; $i < count($data); $i++){ 
 if($data[$i]!="." and $data[$i]!=".."){ 
 if(is_dir($dir.$data[$i])){ 
  echo "<a href='readdir.php?dir=".$_GET['dir']."".$data[$i]."/'>".$data[$i]."</a>\r\n"; 
 } else { 
  echo "<a href='".$_GET['dir']."".$data[$i]."'>".$data[$i]."</a>\r\n"; 
 } 
 } 

} 

?> 
</pre>

Bewerkt: door Woetsha
Link to comment
Delen op andere websites

  • 2 maanden later...

Ik zou graag zelf een "scriptje" maken waarmee ik via een een input een .txt bestand kan bewerken.

Ik heb dit al gemaakt, maar het werkt niet :N .

<?php

$handle = fopen("tekst.txt","w+");

fwrite($handle,"$_POST["tekst"]");

fclose($handle);

?>

<form action="index.php" method="post">
<input type="text" name="tekst">
</form>

Link to comment
Delen op andere websites

Ik zou graag zelf een "scriptje" maken waarmee ik via een een input een .txt bestand kan bewerken.

Ik heb dit al gemaakt, maar het werkt niet :N .

<?php

$handle = fopen("tekst.txt","w+");

fwrite($handle,"$_POST["tekst"]");

fclose($handle);

?>

<form action="index.php" method="post">
<input type="text" name="tekst">
</form>

Er mist een button op je form, en je hebt teveel quote's in je fwrite staan:

<?php

$handle = fopen("tekst.txt","w+");

fwrite($handle,$_POST["tekst"]);

fclose($handle);

?>

<form action="index.php" method="post">
<input type="text" name="tekst">
<input class="button" type="submit" value="save"/>

</form>

Link to comment
Delen op andere websites

  • 1 maand later...

Als je een link maakt in HTML kan je de streep eronder weghalen met de volgende code:

<a href="eenofanderepagina.htm" style="text-decoration:none">Een of andere pagina</a>

Dan kun je ook de verdere opmaak van de link aanpassen met <font>-tags, maar als je op de link klikt wordt deze nog steeds paars ongeacht de opmaak. Is er ook een manier om dit tegen te gaan?

:bier: Nuke[NL]

Link to comment
Delen op andere websites

Je kan de links helemaal naar je eigen wensen aanpassen met CSS. Deze code gebruik je eigenlijk ook al tussen de aanhalingstekens achter style, maar ik ga je even laten zien hoe het makkelijker kan.

CSS zet je tussen de head-tags. Om aan te geven welke tag we gebruiken, geven de a aan. Nu weet de browser dat we het over een link hebben. Dit is de code die je kan gebruiken voor links:

<style type="text/css">
<!--
a:link { 
font-size: 12pt; color: blue; text-decoration: underline;}
a:visited {
font-size: 12pt; color: orange; text-decoration: none;}
a:hover { 
font-size: 12pt; color: red; text-decoration: line-through;}
a:active {
font-size: 12pt; color: black; text-decoration: underline;}
-->
</style>

Wat zou er gebeuren als je dit zou toevoegen? Ongebruikte link: klik hier, gebruikte link: klik hier, met je muis over de link: klik hier en een link die actief is klik hier.

Zo kan je dus links op je eigen pagina's naar eigen wens aanpassen. Het werkt eigenlijk in elke browser, dus daar hoef je je geen zorgen over te maken. Succes! :)

Edit: Zet dit op elke pagina waar je het wilt toepassen, of link in elke pagina naar het CSS-bestand met behulp van de onderstaande code. Ook deze plaats je in de head-tags. Je hoeft nu niet meer style="xxx" in je a-tags te gebruiken.

<link rel="stylesheet" type="text/css" href="opmaak.css">

Bewerkt: door Thundercover
Link to comment
Delen op andere websites

  • 7 maanden later...

Nu heb ik een tijdscript met PHP, maar omdat de server in een andere tijdzone staat, moet ik 9 uur optellen bij de tijd om de normale tijdzone te krijgen:

$hour=date("H")+9;

Dit werkt, maar nu is het probleem dat tussen 00:00 en 09:00 een getal tussen de 24 en 33 bij de uren komt te staan. Met welke if kan ik nu dit probleem oplossen?

Edit: @Hieronder: Zou best kunnen, had dit probleem al eens maar ben opnieuw met het script begonnen. Wist niet waar ik het gepost had, hier dus. :puh:

Bewerkt: door Donald F. Duck
Link to comment
Delen op andere websites

Nu heb ik een tijdscript met PHP, maar omdat de server in een andere tijdzone staat, moet ik 9 uur optellen bij de tijd om de normale tijdzone te krijgen:
$hour=date("H")+9;

Dit werkt, maar nu is het probleem dat tussen 00:00 en 09:00 een getal tussen de 24 en 33 bij de uren komt te staan. Met welke if kan ik nu dit probleem oplossen?

Wat dacht je van zoiets:

$hour=date("H")+9;
if ($hour >= 24) { $hour -= 24; }

EDIT: oh nee, dit werkt natuurlijk niet, omdat date() altijd een string teruggeeft en geen integers.

Dit zou moeten werken:

$hour=date("H")+9;
if (intval($hour) >= 24) {$hour2 = intval($hour) - 24;}
else {$hour2 = $hour;} /* nu heb je dus de tijd in een integer, als je per se een 0 er voor wilt hebben bij bijv 09:00, kun je dit doen: */
settype($hour2,"string");
if (intval($hour2) < 10) {$hour2 = "0" . $hour2;}

Nu moet je verder dus $hour2 gebruiken. Ik moet toegeven, niet het meest mooie stuk dat ik ooit geschreven heb, maar 't werkt in ieder geval wel.

Edit#2 @ marcootje: Oh ja, tuurlijk. Stom dat ik dat niet gezien had eigenlijk... Maar inderdaad, in C++ moet je zoiets niet proberen, krijg je gelijk een hoop gezeik bij het compileren :7

Bewerkt: door K.O.
Link to comment
Delen op andere websites

Gast
Dit onderwerp is gesloten.
  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.

×
×
  • Create New...