Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Dj-Bewerbung (Formmailer) [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Dj-Bewerbung (Formmailer)


 
whocare
05-02-2010, 01:12 
 
Hallo,

ich bin Anfänger im programmieren und habe einen Formmailer für eine Dj-Bewerbung gebastelt. Allerdings schickt er keine Mails raus und ich würde gerne Pflichtfelder einbauen, habe aber keine Ahnung wie das funktionieren soll. Vielleicht kann mir hier einer helfen, ich werde den Code mal posten.
<?php
$adminMail = 'info@tronicfm.de';
if ( empty($send) ) {
?>
<form action="<?php echo $PHP_SELF; ?>" method="POST">

<table width="100%">
<tr><td width="10%">Dj Name</td><td width="90%">
<input type="text" name="data[Dj Name]">
</td></tr>
<tr><td>Vorname</td>
<td><input type="text" name="data[Vorname]"></td></tr>
<tr><td>Nachname</td><td>
<input type="text" name="data[Nachname]"></td></tr>
<tr><td>Geburtstag</td>
<td><select name="d" class="textbox"><option value="">--</option>\n
<option value="1").">1</option>\n
<option value="2").">2</option>\n
<option value="3").">3</option>\n<option value="4").">
4</option>\n<option value="5"
).">5
</option>\n<option value="6").">6
</option>\n<option value="7").">7</option>\n
<option value="8").">8</option>\n<option value="9").">9</option>\n
<option value="10").">10</option>\n<option value="11").">11</option>\n
<option value="12").">12
</option>\n<option value="13").">13</option>\n
<option value="14").">14</option>\n<option value="15").">15</option>\n
<option value="16").">16
</option>\n<option value="17").">17</option>\n
<option value="18").">18</option>\n<option value="19").">19</option>\n
<option value="20").">20
</option>\n<option value="21").">21</option>\n<option value="22").">22
</option>\n
<option value="23").">23</option>\n<option value="24").">24</option>\n
<option value="25").">25
</option>\n<option value="26").">26</option>\n<option value="27").">27
</option>\n
<option value="28").">28</option>\n<option value="29").">29</option>\n
<option value="30").">30
</option>\n<option value="31").">31</option>\n
</select> <select name="m" class="textbox">
<option value="">--</option>\n
<option value="1").">1</option>\n<option value="2").">2</option>\n
<option value="3").">3
</option>\n<option value="4").">4</option>\n<option value="5").">5
</option>\n
<option value="6").">6</option>\n<option value="7").">7</option>\n
<option value="8").">8
</option>\n<option value="9").">9</option>\n<option value="10").">10
</option>\n
<option value="11").">11</option>\n<option value="12").">12</option>\n
</select>
<select name="y" class="textbox"><option value="">----</option>\n
\n<option value="1953").">1953
</option>\n<option value="1954").">1954</option>\n
<option value="1955").">1955</option>\n<option value="1956").">1956
</option>\n<option value="1957").">1957
</option>\n<option value="1958").">1958</option>\n
<option value="1959").">1959</option>\n<option value="1960").">1960
</option>\n<option value="1961").">1961
</option>\n<option value="1962").">1962</option>\n
<option value="1963").">1963</option>\n<option value="1964").">1964
</option>\n<option value="1965").">1965
</option>\n<option value="1966").">1966</option>\n
<option value="1967").">1967</option>\n<option value="1968").">1968
</option>\n<option value="1969").">1969</option>\n
<option value="1970").">1970</option>\n<option value="1971").">1971
</option>\n<option value="1972").">1972
</option>\n<option value="1973").">1973</option>\n
<option value="1974".">1974</option>\n<option value="1975").">1975
</option>\n<option value="1976").">1976
</option>\n<option value="1977").">1977</option>\n
<option value="1978").">1978</option>\n<option value="1979").">1979
</option>\n<option value="1980").">1980
</option>\n<option value="1981").">1981</option>\n
<option value="1982").">1982</option>\n<option value="1983").">1983
</option>\n<option value="1984").">1984
</option>\n
<option value="1985").">1985</option>\n<option value="1986").">1986
</option>\n<option value="1987").">1987
</option>\n<option value="1988").">1988</option>\n
<option value="1989").">1989</option>\n
<option value="1990").">1990</option>\n<option value="1991").">1991
</option>\n<option value="1992").">1992
</option>\n<option value="1993").">1993</option>\n
<option value="1994").">1994</option>\n<option value="1995").">1995
</option>\n<option value="1996").">1996
</option>\n<option value="1997").">1997</option>\n
<option value="1998").">1998</option>\n
<option value="1999").">1999</opton>\n<option value="2000").">2000
</option>\n<option value="2001").">2001
</option>\n<option value="2002").">2002</option>\n
<option value="2003").">2003</option>\n<option value="2004").">2004
</option>\n<option value="2005").">2005
</option>\n<option value="2006").">2006</option>\n
<tr><td>Straße und Hausnummer</td><td>
<input type="text" name="data[Geburtstag]"></td></tr>
<tr><td>PLZ und Ort</td><td><input type="text" name="plz" size="5" class="textbox">
<input type="text" name="ort" size="24" class="textbox"></td></tr>
<tr><td>eMail</td><td><input type="text" name="data[eMail]"></td></tr>
<tr><td>Telefon</td><td><input type="text" name="data[Telefon]"></td></tr>
<tr><td>ICQ</td><td><input type="text" name="data[icq]"></td></tr>
<tr><td>Skype</td><td><input type="text" name="data[skype]"></td></tr>
<tr><td>MSN</td><td><input type="text" name="data[MSN]"></td></tr>
<tr><td>DSL Geschwindigkeit</td><td>
<input type="text" name="data[dsl]"></td></tr>
<tr><td>Deine Homepage</td><td
><input type="text" name="data[homepage]"></td></tr>
<tr><td>Beruf</td></td>
<td><select name="job" class="textbox"><option value="">Bitte w&auml;hlen
</option>\n<option value="Sch&uuml;ler">Sch&uuml;ler</option>\n
<option value="Student">Student</option>\
n<option value="Azubi">Azubi</option>\n
<option value="Berufst&auml;tig">Berufst&auml;tig</option>\n
<option value="Arbeitslos">Arbeitslos</option>\n</select></td>
<tr><td>Erfahrung als Dj/Mediator, wenn ja wo gemacht!</td>
<td><select name="erf" class="textbox">
<option value="">--</option>\n<option value="Ja">Ja</option>\n<
option value="Nein">Nein</option>\n</select>
<input type="text" name="erf_ref" size="24" class="textbox"></td>
<tr><td>Musikrepertoire</td><td>
<input type="text" value="min. 500 Lieder" name="manz" size="24"
class="textbox">
</td></tr>
<tr><td>Bewerbung als</td><td>
<select name="data[Geschlecht]">
<option>Resident DeeJay</option>
<option>Mediator</option>
<option>Promo</option>
<option>Redaktion</option>
<option>Homepage Code/Grafik</option>
</select>
</td></tr>

<tr><td>Wie oft kannst Du auflegen?</td><td>
<select name="data[Geschlecht]">
<option value="1 mal die Woche">1 mal die Woche</option>
<option value=" 2 mal die Woche"> 2 mal die Woche</option>
<option value=" 3 mal die Woche"> 3 mal die Woche</option>
<option value=" 4 mal die Woche"> 4 mal die Woche</option>
<option value=" 5 mal die Woche"> 5 mal die Woche</option>
<option value=" täglich"> täglich</option>
</select>
</td></tr>

<tr><td>Geschlecht</td><td>
<select name="data[Geschlecht]">
<option>M&auml;nnlich</option>
<option>Weiblich</option>
</select>
</td></tr>
<tr><td>Letze(s) Webradio(s)</td><td><input type="text"
name="data[letzter_Clan]"></td></tr>

<tr><td>Qualifikationen</td><td><input type="text" name="data[Qualifikationen]"></td></tr>
<tr><td>Equipment mit dem Du auflegst.</td><td>
<textarea cols="40" rows="4" name="data[Warum_zu_uns]"></textarea></td></tr>
<tr><td>Warum zu uns ?</td>
<td><textarea cols="40" rows="4" name="data[Warum_zu_uns]"></textarea></td></tr>

<tr><td>Was wir wissen müssen.</td>
<td><textarea cols="40" rows="4" name="data[Was_wir_wissen_sollten]"></textarea></td></tr>
<tr>
<td></td><td><input type="submit" value="Senden" name="send"></td>
</tr>
</table>
</form>
<?php
} else {
$textToSend = "Hallo\n\nFolgende Daten wurden gesant\n\n";
foreach($data as $key => $value) {
$key = str_replace('_',' ',$key);
$textToSend .= $key.' = '.$value."\n\n";
}
$textToSend .= "\n\nMit freundlicher unterstützung von TronicFM.de";
mail($adminMail,'eMail vom Bewerbungsformular',$textToSend,'From: '.$data['Nickname']
.' <'.$data['eMail'].'>');
?>

<?php
}

?>

 
wahsaga
05-02-2010, 01:18 
 
Du liest jetzt bitte erst mal die Regeln (http://www.php-resource.de/forum/php-developer-forum/announcements.html), und postest dann deinen Code vernünftig.

 
whocare
05-02-2010, 01:51 
 
Du liest jetzt bitte erst mal die Regeln (http://www.php-resource.de/forum/php-developer-forum/announcements.html), und postest dann deinen Code vernünftig.

Jow, habs gemerkt und geändert ;)

 
wahsaga
05-02-2010, 01:53 
 
Dann als nächstes: Informiere dich, was register_globals=off bedeutet.
http://peterkropff.de/tutorials/php_register/php_register.htm

 
AmicaNoctis
05-02-2010, 02:24 
 
Hallo,

Jow, habs gemerkt und geändert ;)

offenbar nicht, denn ich muss immer noch horizontal scrollen. Also hast du offensichtlich die Regeln nicht richtig gelesen - siehe Signatur.

Gruß,

Amica

 
whocare
05-02-2010, 03:16 
 
Ich musste es nich mehr, von daher gedacht, es passt! :)

 
onemorenerd
05-02-2010, 14:33 
 
Das Formular ist hoffentlich noch nicht online, denn es ist offen wie ein Scheunentor! Damit kann jeder Spamer seinen Dreck in die Welt schleudern - mit deinem Namen als Absender.
Mach dich über Mail Injection schlau!

 
AmicaNoctis
05-02-2010, 14:43 
 
Ergänzung: eine imho sehr verständliche Seite zu dem Thema mit vielen Beispielen ist Email Injection | damonkohler (http://www.damonkohler.com/2008/12/email-injection.html)

 
Kropff
05-02-2010, 20:36 
 
ich bin Anfänger im programmieren und habe einen Formmailer für eine Dj-Bewerbung gebastelt. Allerdings schickt er keine Mails raus
Hast du auf deinem System überhaupt einen Mail-Server laufen? Möglicherweise werden sie auch nicht versendet, weil null Informationen vorhanden sind. Daher solltest du dich zuerst mit dem Thema register_globals (http://www.peterkropff.de/tutorials/php_register/php_register.htm) beschäftigen. Das wird wohl dein Problem sein. Stichwort $_POST.

und ich würde gerne Pflichtfelder einbauen, habe aber keine Ahnung wie das funktionieren soll.
Du definierst ein Array mit den Namen der Pflichtfelder. Dann überprüfst du, ob die entsprechenden POST-Werte leer sind. Und wenn ja, dann gibst du eine Fehlermeldung aus.

Peter

 
whocare
06-02-2010, 00:29 
 
Hallo,

ja ich habe einen Mail-Server auf meinem Root am laufen und nein, dass Script ist noch nicht am laufen.
Werde mir de Tipps von euch zugute tun ...

 
whocare
07-02-2010, 18:39 
 
Hallo,

kann mir einer dieses Formular: http://www.php-resource.de/forum/php-developer-forum/98719-dj-bewerbung-formmailer.html anpassen das es funktioniert? Also das es überhaupt Mails versendet und die Pflichtfelder machen. Ich bin (noch) zu blöde dafür und bekomme das einfach nicht hin.

Freue mich über Hilfe von euch :)

Grüße,
WhoCare

 
karadok
12-02-2010, 22:19 
 
Hat sich erledigt

 
whocare
13-02-2010, 21:49 
 
Erledigt? :dontknow:

 
AmicaNoctis
14-02-2010, 01:29 
 
Erledigt? :dontknow:

Ja, karadok hatte nur ein Flame abgesetzt und dann wieder entfernt und durch "Hat sich erledigt" ersetzt.

Aber zum Thema. Wie weit bist du inzwischen? Wo hakt es noch? Was brauchst du noch, um weiterzukommen?

Gruß,

Amica

 
whocare
14-02-2010, 02:01 
 
Aber zum Thema. Wie weit bist du inzwischen? Wo hakt es noch? Was brauchst du noch, um weiterzukommen?

Gruß,

Amica

Eigentlich bei Null. Ich ziehe mir gerade ein Php tut rein ... Also noch meilenweit entfernt :(
Wäre nett wenn mir da einer helfen könnte )

 
AmicaNoctis
14-02-2010, 11:23 
 
Er schickt kein Mails raus, sondern zeigt immer wieder das Formular an? Das liegt daran, dass $send immer leer ist, weil es nirgends gesetzt wurde. Füg mal am Anfang des Skripts folgendes ein:

$send = isset($_POST["send"]) ? $_POST["send"] : null;

Die anderen Variablen sind davon aber auch betroffen. Die musst du dir ebenfalls über das $_POST-Array besorgen. Das hätte dir aber schon die Seite von Peter Kropff sagen können. Dort steht genau beschrieben, warum das so ist, wie man es früher gemacht hat, warum das jetzt nicht mehr funktioniert und wie man es stattdessen macht (http://peterkropff.de/tutorials/php_register/superglobale.htm).

Gruß,

Amica


Alle Zeitangaben in WEZ +2. Es ist jetzt 00:45 Uhr.