myGully.com

myGully.com (https://mygully.com/index.php)
-   Entwicklung & Programmierung (https://mygully.com/forumdisplay.php?f=72)
-   -   Php hilfe (https://mygully.com/showthread.php?t=2663296)

onuroez 20.07.12 23:06

Php hilfe
 
Hallo Freunde ich brauche euer hilfe undswar geht es um ein Kontaktformular das alleinstehend ist.
ich habe bei einigen schiften hinbekommen das es auf die Schriftgröße 9 und Century Gothic als schriftart im Browser angezeigt wird.
aber es gibt noch einige Schrifte die noch als Times New Roman angezeigt wird im Browser die Schriftgröße ist auch größer als gewollt, ich wäre sehr dankbar wenn ihr mir alles in dem unten angegebene code programmieren würdet.
jetzt wollte ich gerne wissen ob mir das jemand zurecht Programmieren kann.

Vielen Dank im Voraus

<?php

// *** Einstellungen ***
$mail_to = '[Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...]'; // Ihre Mailadresse (Empfängeradresse)

// ################################################## ###########################
$from_name=GetParam('fromname');
$from_mail=strtolower(GetParam('frommail'));
$mail_subject=GetParam('mailsubject');
$mail_text=GetParam('mailtext');
$send=GetParam('s');

$err_text='';
if(trim($from_name)=='') $err_text.='Bitte geben Sie ihren Name ein.<br>';
if(trim($from_mail)=='')
$err_text.='Bitte geben Sie ihren E-Mail ein.<br>';
else
if(!preg_match('/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,6})$/i',$from_mail))
$err_text.='Bitte Geben Sie ihren gültigen E-Mail adresse ein..<br>';
if(trim($mail_subject)=='') $err_text.='Bitte geben Sie ihren Betreff ein..<br>';
if(trim($mail_text)=='') $err_text.='Bitte geben Sie ihren Nachricht ein.<br>';

// *** Zu langen Text abschneiden ***
if(strlen($mail_text)>1000) {
$mail_text=substr($mail_text,0,1000).'... (Text wurde gekürzt!)';
}
$from_name=str_replace(chr(34),"''",$from_name);
$mail_subject=str_replace(chr(34),"''",$mail_subje ct);
$from_name=stripslashes($from_name);
$from_mail=stripslashes($from_mail);
$mail_subject=stripslashes($mail_subject);
$mail_text=stripslashes($mail_text);

if (($send == '1') && ($err_text != '')) {
echo '<p><big><b>Fehler:</b></big><br>';
echo $err_text.'</p>';
}

if (($send != '1') || ($err_text != '')) {
?>

<form action="<?=GetParam('PHP_SELF','S')?>" method="post">
<table border=0 cellspacing=2 cellpadding=0 width=100%>
<tr>
<td nowrap align=right>
<font face="Century Gothic" style="font-size: 9pt" color="#3D3D3D">Name:</font></td><td>&nbsp;
</td>
<td width=100%><font face="Century Gothic"><span style="font-size: 9pt">
<font color="#3D3D3D"><input type="text" name="fromname" size=50 maxlength=120 value="<?=$from_name?>"></font></span></font></td></tr>
<tr>
<td nowrap align=right>
<font face="Century Gothic" style="font-size: 9pt" color="#3D3D3D">E-Mail:</font></td><td></td>
<td width=100%><font face="Century Gothic"><span style="font-size: 9pt">
<font color="#3D3D3D"><input type="text" name="frommail" size=50 maxlength=120 value="<?=$from_mail?>"></font></span></font></td></tr>
<tr>
<td nowrap align=right>
<font face="Century Gothic" style="font-size: 9pt" color="#3D3D3D">Betreff:</font></td><td></td>
<td width=100%><font face="Century Gothic"><span style="font-size: 9pt">
<font color="#3D3D3D"><input type="text" name="mailsubject" size=50 maxlength=120 value="<?=$mail_subject?>"></font></span></font></td></tr>
<tr>
<td nowrap align=right valign=top>
<font face="Century Gothic" style="font-size: 9pt" color="#3D3D3D">
Nachricht:<br>
<i>(Max. 1.000 Zeichen)</i></font></td><td></td>
<td width=100%><font face="Century Gothic"><span style="font-size: 9pt">
<font color="#3D3D3D"><textarea cols=40 rows=10 name="mailtext"><?=$mail_text?></textarea></font></span></font></td></tr>
<tr><td></td><td></td><td>
<font face="Century Gothic"><span style="font-size: 9pt"><font color="#3D3D3D">
<input type="hidden" value="1" name="s">
</font></span></font><font face="Century Gothic"><span style="font-size: 9pt">
<font color="#3D3D3D">
<input type="submit" value="Senden" name="submit">
</font></span></font>
</td></tr>
</table>
</form>

<?php
} else {
$header="From: $from_name <$from_mail>\n";
$header.="Reply-To: $from_mail\n";
$header.="X-Mailer: PHP-ContactForm-S*****\n";
$header.="Content-Type: text/plain";
$mail_date=gmdate('D, d M Y H:i:s').' +0000';
$send=0;
if(@mail($mail_to,$mail_subject,$mail_text,$header ))
{
echo "<p><b>Die Nachricht wurde erfolgreich abgesendet.</b></p>";
echo "<p><a href=\"".GetParam('PHP_SELF','S')."?from_name=$fro m_name&from_mail=$from_mail\">Zurück zum Formular</a></p>";
}else{
echo "<p><b>Beim Versenden der Nachricht ist ein Fehler aufgetreten, bitte überprüfen Sie ihre einträge!</b></p>";
echo "<p><a href=\"".GetParam('PHP_SELF','S')."?from_name=$fro m_name&from_mail=$from_mail&mail_subject=$mail_sub ject&mail_text=";
}
}

function GetParam($ParamName, $Method = 'P', $DefaultValue = '') {
if ($Method == 'P') {
if (isset($_POST[$ParamName])) return $_POST[$ParamName]; else return $DefaultValue;
} else if ($Method == 'G') {
if (isset($_GET[$ParamName])) return $_GET[$ParamName]; else return $DefaultValue;
} else if ($Method == 'S') {
if (isset($_SERVER[$ParamName])) return $_SERVER[$ParamName]; else return $DefaultValue;
}
}
?>

ProgMaster 21.07.12 22:41

Schriftart und -größe hat nichts mit PHP zu tun und auch nichts im Code zu suchen.

P.S. Und lern bitte wie man korrekt einen Thread in einem Forum erstellt!

kkhamburg 22.07.12 00:08

@onuroez

Leider schreibst du nicht ob dein Formular alleinstehend laufen soll oder irgendwo eingebunden wird.
Daraus ergibt sich nämlich unter anderem die Möglichkeit der Schrift-Formatierung.

Erläutere doch mal wie das ganze am Schluss tatsähclich genutzt werden soll.

Eine Schrift wie "Century Gothic" festzulegen ist übrigens keine gute Idee, da diese keine Standardschrift in HTML ist. Wer die Schriftart nicht installiert hat, würde sie nicht angezeigt bekommen, es sei denn du gibst die Schriftart dem Browser mit.

@ProgMaster

Langsam frag ich mich wirklich was du mit deinen Postings bezweckst.
Es ist ja wunderbar wenn du all das schon in die Wiege gelegt bekommen hast, andere haben leider nicht das Glück und müssen eben fragen.
Da der TE, wie unweigerlich zu sehen, keine Ahnung von der Marterie hat wird es ihm auch schwerfallen einen in deinen Augen "richtigen" Titel zu finden.
Wenn man sich deine Postings ansieht ist das nichts als gehaltloses, beleidigendes gespamme. Was soll sowas ?

Hinzu kommt das deine Aussage hier nicht einmal korrekt ist.
Wieso haben Schrift-Einstellungen nichts im Code zu suchen ?
Es macht doch überhaupt keinen Sinn wegen einer Schrift-Einstellung ein extra css anzulegen und wo muss dann wohl die Schrift-Einstellung stehen ?

onuroez 22.07.12 00:56

Hallo kkhamburg,
ich wollte hier nichts falsch machen, ich bin seid 2,5 jahren in Deutschland deshalb muss ich noch viel lernen.
Ich habe versucht oben das nochmal etwas klarer darzustellen wenn du mir helfen könntest wäre es sehr lieb, würde mich freuen wenn du mir PN schreibst.
Vielen Dank.

kkhamburg 22.07.12 06:26

@onuroez

Schade das du nicht wirklich auf mein Posting eingegangen bist :eek:

Ich hab jetzt mal das gemacht, was ich denke, Wird das Formular so irgendwo eingebunden kann das jedoch Probleme geben.

Fürs nächste Mal - Wenn du schon Hilfe erwartest solltest du zumindestens auf die gestellten Fragen eingehen.

Code:

<?php
// *** Einstellungen ***
$mail_to = '[Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...]'; // Ihre Mailadresse (Empfängeradresse)
// ################################################## ###########################

$from_name=GetParam('fromname');
$from_mail=strtolower(GetParam('frommail'));
$mail_subject=GetParam('mailsubject');
$mail_text=GetParam('mailtext');
$send=GetParam('s');

$err_text='';
if(trim($from_name)=='') $err_text.='Bitte geben Sie ihren Name ein.<br>';
if(trim($from_mail)=='')
$err_text.='Bitte geben Sie ihren E-Mail ein.<br>';
else
if(!preg_match('/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,6})$/i',$from_mail))
$err_text.='Bitte Geben Sie ihren gültigen E-Mail adresse ein..<br>';
if(trim($mail_subject)=='') $err_text.='Bitte geben Sie ihren Betreff ein..<br>';
if(trim($mail_text)=='') $err_text.='Bitte geben Sie ihren Nachricht ein.<br>';

// *** Zu langen Text abschneiden ***
if(strlen($mail_text)>1000) {
$mail_text=substr($mail_text,0,1000).'... (Text wurde gekürzt!)';
}
$from_name=str_replace(chr(34),"''",$from_name);

$mail_subject=str_replace(chr(34),"''",$mail_subject);

$from_name=stripslashes($from_name);
$from_mail=stripslashes($from_mail);
$mail_subject=stripslashes($mail_subject);
$mail_text=stripslashes($mail_text);

if (($send == '1') && ($err_text != '')) {
echo '<p><big><b>Fehler:</b></big><br>';
echo $err_text.'</p>';
}

if (($send != '1') || ($err_text != '')) {
?>
<html>
<head>
<style type="text/css" media="screen">
body { font-family:'Century Gothic' , arial , sans-serif;font-size:9pt;color:#3D3D3D; }
.right { text-align:right; white-space:nowrap;font-size:9pt;  }
</style>
</head>
<body>
<form action="<?=GetParam('PHP_SELF','S')?>" method="post">
<table border="0" cellspacing="2" cellpadding="0" width="100%">
        <tr>
                <td class="right">Name:</td>
                <td></td>
                <td width=100%><input type="text" name="fromname" size=50 maxlength=120 value="<?=$from_name?>"></td>
        </tr>
        <tr>
                <td class="right">E-Mail:</td>
                <td></td>
                <td width=100%><input type="text" name="frommail" size=50 maxlength=120 value="<?=$from_mail?>"></td>
        </tr>
        <tr>
                <td class="right">Betreff:</td>
                <td></td>
                <td width=100%><input type="text" name="mailsubject" size=50 maxlength=120 value="<?=$mail_subject?>"></td>
        </tr>
        <tr>
                <td class="right" valign="top">Nachricht:<br><i>(Max. 1.000 Zeichen)</i></td>
                <td></td>
                <td width=100%><textarea cols=40 rows=10 name="mailtext"><?=$mail_text?></textarea></td>
        </tr>
        <tr>
                <td></td>
                <td></td>
                <td><input type="hidden" value="1" name="s"><input type="submit" value="Senden" name="submit"></td>
        </tr>
</table>
</form>

<?php
} else {
$header="From: $from_name <$from_mail>\n";
$header.="Reply-To: $from_mail\n";
$header.="X-Mailer: PHP-ContactForm-S*****\n";
$header.="Content-Type: text/plain";
$mail_date=gmdate('D, d M Y H:i:s').' +0000';
$send=0;
if(@mail($mail_to,$mail_subject,$mail_text,$header ))
{
echo "<p><b>Die Nachricht wurde erfolgreich abgesendet.</b></p>";
echo "<p><a href=\"".GetParam('PHP_SELF','S')."?from_name=$fro m_name&from_mail=$from_mail\">Zurück zum Formular</a></p>";
}else{
echo "<p><b>Beim Versenden der Nachricht ist ein Fehler aufgetreten, bitte überprüfen Sie ihre einträge!</b></p>";
echo "<p><a href=\"".GetParam('PHP_SELF','S')."?from_name=$fro m_name&from_mail=$from_mail&mail_subject=$mail_sub ject&mail_text=";
}
}

function GetParam($ParamName, $Method = 'P', $DefaultValue = '') {
if ($Method == 'P') {
if (isset($_POST[$ParamName])) return $_POST[$ParamName]; else return $DefaultValue;
} else if ($Method == 'G') {
if (isset($_GET[$ParamName])) return $_GET[$ParamName]; else return $DefaultValue;
} else if ($Method == 'S') {
if (isset($_SERVER[$ParamName])) return $_SERVER[$ParamName]; else return $DefaultValue;
}
}
?>


onuroez 23.07.12 00:20

kkhamburg danke für deine Hilfe :)

onuroez 28.10.13 20:03

Hallo Freunde,
ihr habt mir mal echt sehr geholfen vor einem Jahr, wegen ein Formular was alleinstehend ist jetzt wollte ich dieses formular mal erweitern. Ich habe noch ein Problem das meine ganzen eingetragene Felder nicht in mein email erscheinen, es erscheint nur folgendes Feld ´Nachricht: Extras und Bemerkungen zum Auftrag`was mache ich falsch?

ich entschuldige mich das ich euch wieder stören muss :(

mit freundlichen grüßen
Onuroez


----------------------------------------------------


SPYFAN 01.11.13 21:54

Kannst Du bitte mal die POST Werte geben? Das ich mal besser sehe welche ArrayNamen übergeben werden und mit welchem Wert/Werten

PHP-Code:

echo '<pre>';
echo 
var_dump($_POST);
echo 
'</pre>'



Alle Zeitangaben in WEZ +1. Es ist jetzt 09:53 Uhr.

Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.