Jump to content
Geplaatst:
comment_308222

He allemaal,

Ik ben bezig met een contact script in php wat ondertussen werkt. Maar ik zet met 1 probleempje als hij hem verzonden heeft en je telkens op refresh drukt blijft hij mailtjes versturen.

En dat is dus niet de bedoeling.

Dit is het formulier:

<form name="contact" method="post" action="send.php">
<table cellspacing="2" cellpadding="2">
 <tr valign="top" align="left">
<td> Naam:</td>
<td>
<input  name="naam" type="text" size="25"/>
</td>
</tr>
<tr valign="top" align="left">
<td>Email: </td>
<td>
<input name="mail" type="text" size="25" /></td>
</tr>
<tr valign="top" align="left">
<td>Onderwerp: </td>
<td>
<input name="onderwerp" type="text" size="25"  /></td>
</tr>
<tr valign="top" align="left">
<td>Bericht: </td>
<td><textarea name="bericht" rows="7" cols="40" /></textarea></td>
</tr>
<tr valign="top" align="left"> 
  <td> </td> 
  <td> 
	<input type="submit" name="Submit" value="Verzend"> 
  </td> 
</tr>
</table>
</form>

En dit is het verzend script:

<?php

$mailsupport= "mij@mail.nl";
$titel= "Support Ticket Contact -" . $_POST['onderwerp'];
// set datum 
$datum = date("d.m.Y H:i"); 
// set ip 
$ip = $_SERVER['REMOTE_ADDR']; 
// Bericht
$mssg = 
$mssg .= "Ingevuld Contact Formulier \n\n";
$mssg .= "Naam: " .$_POST['naam'] . "\n";
$mssg .= "Mail Adres: " .$_POST['mail'] . "\n";
$mssg .= "Onderwerp: " .$_POST['onderwerp'] . "\n";
$mssg .= "Bericht:" . "\n";
$mssg .= $_POST['bericht'] . "\n" . "\n";
$mssg .= "Dit bericht is verstuurd op $datum van het ip adres " . $ip . ".";
//Afzender
$headers = "From: " . $_POST['naam'] . " <" . $_POST['mail'] . ">"; 

if ($_SERVER['REQUEST_METHOD'] == 'POST'){

if (empty($naam)) { echo "U bent iets vergeten in te vullen !!<br> 
Klik <a href=\"java script:history.back(1)\">hier</a> om terug tegaan."; 
} elseif (empty($mail))  { echo "U bent iets vergeten in te vullen !!!<br> 
Klik <a href=\"java script:history.back(1)\">hier</a> om terug tegaan."; 
} elseif (empty($onderwerp)) { echo "U bent iets vergeten in te vullen !!!<br> 
Klik <a href=\"java script:history.back(1)\">hier</a> om terug tegaan."; 
} elseif (empty($bericht)) { echo "U bent iets vergeten in te vullen !!!<br> 
Klik <a href=\"java script:history.back(1)\">hier</a> om terug tegaan."; 
} else { 

mail ($mailsupport, $titel, $mssg, $headers);
echo "Je bericht is verstuurd";
}
}
?>

Graag hulp.

  • Reacties 62
  • Bezichtigingen 19.2k
  • Created
  • Laatste reactie

Top Posters In This Topic

Featured Replies

Geplaatst:
comment_816515

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

  • 3 weken later...
Geplaatst:
comment_829810

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 !

Geplaatst:
comment_830793

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

Geplaatst:
comment_830799

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

  • 2 maanden later...
Geplaatst:
comment_886189

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>

Geplaatst:
comment_886937
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>

  • 1 maand later...
Geplaatst:
comment_914537

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]

Geplaatst:
comment_914567

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

  • 7 maanden later...
Geplaatst:
comment_1172476

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

Geplaatst:
comment_1172491

Wat kwam dit probleem mij nogal bekend voor... En verrek, de vorige keer was het ook jij die exact!! hetzelfde probleem plaatste :schater:klik. En nog succes met je klok natuurlijk :)

Bewerkt: door VWO-er

Geplaatst:
comment_1172558
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.

Geplaatst:
comment_1172898

$hour is wel een integer K.O. ;)

date() geeft dan wel een string terug, maar omdat er +9 bij staat force je hem naar een integer

dus als je correct wilt werken doe je het zo:

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

Maar omdat php nogal makkelijk doet met datatypes, kun je het ook op deze kortste manier doen:

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

met evt. dat stukje voor die 0 ervoor, zodat het 09:00 wordt ipv 9:00

Daarvan zal ik ook ff de korste geven:

if($hour < 10)
$hour = "0".$hour;

Dit moet je trouwens niet proberen bij striktere talen... die vallen er zeker wel over :)

Maar als je met php werkt moet je niet moeilijk doen als het makkelijk kan ;)

Mvg,

Marco

Bewerkt: door marcootje

Gast
Dit onderwerp is gesloten.

Recent actief 0

  • Er zijn hier geen geregistreerde gebruikers aanwezig.