Registrierte User sehen keine Werbung und haben Zugriff auf alle Funktionen des Forums

22.05.2012, 00:37 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren
Zuletzt online

Keine Benutzer in Liste

Statistik

135 Mitglieder - 1 130 Themen - 7 079 Beiträge (durchschnittlich 5,02 Beiträge/Tag)
Unser neuestes Mitglied heißt: gaoshu01.

Andreas

ist hier zu Hause

Registrierungsdatum: 08.07.2008

Beiträge: 2 226

Danksagungen: 1636 / 30

Aktivitätspunkte: 13990

Level: 43 [?]

Erfahrungspunkte: 3.146.147

Nächstes Level: 3.609.430

Bewertungen - Ø 5

1

29.06.2009, 16:41

[PHP] Awardvergabescript

Hi,
bastel noch an einem Awardvergabescript, wo man aus kriterien auswählen kann und dann der passende award via mail versendet wird

Das erste Problem dabei ist, wie versende ich mit PHP eine E-MAil

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
<?

                    $mail_empfaenger=$empaenge_mailr;

                    $mail_absender=$absender;

                    $betreff="Dein Awardl";

                    $text="Hallo $empaenger_name, /n du hast bei uns den $awardtyp gewonnen./n/n Kriterien hierfuer waren: /n $kriterien";

                    mail($mail_empfaenger$betreff$text,"from:$mail_absender");

                    ?>


Das nächste ist, wie mache ich es, dass der Award mit der Mail mitgesendet wird, sprich eine Grafikdatei als Anhang versendet wird?

PHP-Quelltext

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
<?

                    $grenze="grenzlinie";
$name_des_bildes=$awardname;

                    $headers ="MIME-Version: 1.0\r\n";

                    $headers.="From: $absender\n";

                    $headers.="Content-Type: multipart/mixed;\n\tboundary=$grenze\n";

                    $botschaft<I></I>="\n--$grenze\n";

                    $botschaft.="Content-transfer-encoding: 7BIT\r\n";

                    $botschaft.="Content-type: text/plain\n\n";

                    $botschaft.= " Hallo $empaenger_name, \n du hast bei uns den $awardtyp gewonnen.\n\n Kriterien hierfuer waren: \n $kriterien\n";

                    $botschaft.="\n\n";

                    $botschaft.="\n--$grenze\n";

                    $botschaft.="Content-Type: application/octetstream;\n\tname=$awardname\n";

                    $botschaft.="Content-Transfer-Encoding: base64\n";

                    $botschaft.="Content-Disposition: attachment;\n\tfilename=$awardname\n\n";

                    $zeiger_auf_datei=fopen("$awardname","rb");

                    $inhalt_der_datei=fread($zeiger_auf_datei,filesize("$awardname"));

                    fclose($zeiger_auf_datei);

                    $inhalt_der_datei=chunk_split(base64_encode($inhalt_der_datei));

                    $botschaft.=$inhalt_der_datei;

                    $botschaft.="\n\n";

                    $botschaft.="--$grenze";

                    mail($mail_empfaenger","Dein Award",$botschaft,$headers);

                    print "email wurde versandt";

                    ?>

Jetzt soweit der Mailversand.
Meine Frage: Kennt jemand unter euch einen besseren Weg für den Mailversand mit Anhang?

Welche kriterien sind aus eurer sicht für einen Homepage wichtig und sollten bewertet werden?

Es hat sich bereits 1 Gast bedankt.

Andreas

ist hier zu Hause

Registrierungsdatum: 08.07.2008

Beiträge: 2 226

Danksagungen: 1636 / 30

Aktivitätspunkte: 13990

Level: 43 [?]

Erfahrungspunkte: 3.146.147

Nächstes Level: 3.609.430

Bewertungen - Ø 5

2

29.06.2009, 18:59

Das ganze soll ja auch datenbankbasiert
sein, daher als erstes die anmeldung

PHP-Quelltext

1
2
3
4
5
6
7
8
$name $_POST[name];
$mail $_POST[mail];
$website $_POST[website];
$titel $_POST[titel]M
$beschreibung $_POST[beschreibung];
$datum date("d.m.Y H:i");

$sql->query('INSERT INTO `awardbewerber` (`Name`, `Mail`, `Website`, `Titel`, `Beschreibung`, `Datum`, `Status`) VALUES (\''.$sql->encode($name).'\', \''.$sql->encode($mail).'\', \''.$sql->encode($website).'\', \''.$sql->encode($titel).'\', \''.$sql->encode($beschreibung).'\', \''.$sql->encode($datum).'\', \''.$sql->encode(1).'\');');

surcouf

Tratschplatz unter den Favoriten gespeichert

Registrierungsdatum: 06.01.2009

Beiträge: 367

Danksagungen: 25 / 4

Geburtstag: 18.12.1983 (28)

Geschlecht: Männlich

Wohnort: Constance

Aktivitätspunkte: 1960

Level: 32 [?]

Erfahrungspunkte: 451.926

Nächstes Level: 453.790

Bewertungen - Ø 5

3

29.06.2009, 19:49

Definiere besseren Weg ;)

Über PHP gibt es mail, imap_mail und PEAR::mail. Letztendlich funktionieren sie aber prinzip- und programmiermäßig gleich




Kriterien:
Design (entsprechend dem Sinn und Zweck der Seite)
Aufbau
Kompatibilität und Standardkonformität
Inhalt

Andreas

ist hier zu Hause

Registrierungsdatum: 08.07.2008

Beiträge: 2 226

Danksagungen: 1636 / 30

Aktivitätspunkte: 13990

Level: 43 [?]

Erfahrungspunkte: 3.146.147

Nächstes Level: 3.609.430

Bewertungen - Ø 5

4

29.06.2009, 19:57

Bei der Anmeldung erhält jeder Eintrag den Status 1 für nicht überprüft

Ausgabe aller ungeprüften Bewerber

PHP-Quelltext

1
2
3
4
5
6
print "<table border="0" width="100%">";

$result $sql->query('SELECT * FROM `awardbewerber` WHERE `Status` =  1');
while ($row $sql->fetch($result)) {
print "<tr><td>$row['Name']</td><td><a href="$row['Website']" alt="$row['Titel']">$row['Titel']</a><td><td>$row['Beschreibung']</td><td>$row['Datum']</td>";
}

Andreas

ist hier zu Hause

Registrierungsdatum: 08.07.2008

Beiträge: 2 226

Danksagungen: 1636 / 30

Aktivitätspunkte: 13990

Level: 43 [?]

Erfahrungspunkte: 3.146.147

Nächstes Level: 3.609.430

Bewertungen - Ø 5

5

29.06.2009, 20:28

Und die liste der gewonnenen Awards

PHP-Quelltext

1
2
3
4
5
6
7
print "<table border="0" width="100%">";

$result $sql->query('SELECT * FROM `awardbewerber` WHERE `Status` = 2');
while ($row $sql->fetch($result)) {
print '<tr><td>'.$row['Name'].'</td><td><a href="'.$row['Website'].'" alt="'.$row['Titel'].'">'.$row['Titel'].'</a><td><td>'.$row['Beschreibung'].'</td><td>'.$row['Datum'].'</td><td>'.$row['Award'].'</td>';

}

Andreas

ist hier zu Hause

Registrierungsdatum: 08.07.2008

Beiträge: 2 226

Danksagungen: 1636 / 30

Aktivitätspunkte: 13990

Level: 43 [?]

Erfahrungspunkte: 3.146.147

Nächstes Level: 3.609.430

Bewertungen - Ø 5

6

29.06.2009, 20:30

Definiere besseren Weg ;)

Über PHP gibt es mail, imap_mail und PEAR::mail. Letztendlich funktionieren sie aber prinzip- und programmiermäßig gleich




Kriterien:
Design (entsprechend dem Sinn und Zweck der Seite)
Aufbau
Kompatibilität und Standardkonformität
Inhalt
Schau mal, ob das vom proggen her fehlerfrei ist
basiert alles auf deiner SQL-Klasse

surcouf

Tratschplatz unter den Favoriten gespeichert

Registrierungsdatum: 06.01.2009

Beiträge: 367

Danksagungen: 25 / 4

Geburtstag: 18.12.1983 (28)

Geschlecht: Männlich

Wohnort: Constance

Aktivitätspunkte: 1960

Level: 32 [?]

Erfahrungspunkte: 451.926

Nächstes Level: 453.790

Bewertungen - Ø 5

7

29.06.2009, 20:35

Deinen Tabellenaufbau halte ich für eher nicht gelungen ;)

tp_awards
- a_id
- a_name
- a_beschreibung
- a_sieger (verknüpft mit ab_id des siegers)

tp_award_bewerber
- ab_id
- a_id
- ab_name
- ab_homepage
- ab_titel
- ab_beschreibung
- ab_punkte (serialized array welches die Gesamtpunktzahl sowie die einzelnen Punkte pro Bewertungskategorie enthält)

surcouf

Tratschplatz unter den Favoriten gespeichert

Registrierungsdatum: 06.01.2009

Beiträge: 367

Danksagungen: 25 / 4

Geburtstag: 18.12.1983 (28)

Geschlecht: Männlich

Wohnort: Constance

Aktivitätspunkte: 1960

Level: 32 [?]

Erfahrungspunkte: 451.926

Nächstes Level: 453.790

Bewertungen - Ø 5

8

29.06.2009, 20:38

PHP-Quelltext

1
print "<tr><td>$row['Name']</td><td><a href="$row['Website']" alt="$row['Titel']">$row['Titel']</a><td><td>$row['Beschreibung']</td><td>$row['Datum']</td><td>$row['Award']</td>";



is ja mal totaler Müll mit der unterschiedlichen Nutzung der Anführungszeichen. Du solltest das mal vereinheitlichen. Das machts einfacher und verständlichere.


PHP-Quelltext

1
print '<tr><td>'.$row['Name'].'</td><td><a href="'.$row['Website'].'" alt="'.$row['Titel'].'">'.$row['Titel'].'</a><td><td>'.$row['Beschreibung'].'</td><td>'.$row['Datum'].'</td><td>'.$row['Award'].'</td>';



Ausserdem ist es immer besser templates für den HTML-Code zu verwenden, das macht es auch deutlich übersichtlicher.

Andreas

ist hier zu Hause

Registrierungsdatum: 08.07.2008

Beiträge: 2 226

Danksagungen: 1636 / 30

Aktivitätspunkte: 13990

Level: 43 [?]

Erfahrungspunkte: 3.146.147

Nächstes Level: 3.609.430

Bewertungen - Ø 5

9

30.06.2009, 17:55

ne,
ich bin mit meinr datenbank sehr happy

id
name
mail
homepage
titel
beschreibung
award
bewertung
status

es hat einen sinn, dass ich die Datenbank so haben will

ansonsten würde es aber funktionieren, wie ich es geschrieben habe, oder?

surcouf

Tratschplatz unter den Favoriten gespeichert

Registrierungsdatum: 06.01.2009

Beiträge: 367

Danksagungen: 25 / 4

Geburtstag: 18.12.1983 (28)

Geschlecht: Männlich

Wohnort: Constance

Aktivitätspunkte: 1960

Level: 32 [?]

Erfahrungspunkte: 451.926

Nächstes Level: 453.790

Bewertungen - Ø 5

10

30.06.2009, 20:10

Ja

Thema bewerten

Partnerseiten

 

Witzeland.de   ---   Archiv   ---  Kque7 ---  Ratschplatz --- Preisvergleich   ---   Forenblog