php-code wird nicht übertragen

LordAngmar

Ensign
Registriert
Sep. 2004
Beiträge
136
hallo leute!

Bei dem FTP-transfer einer php datei wird anscheinend der gesamte php-code herausgeschnitten, das Browser-Fenster bleibt nämlich total blank (ie, firefox, opera). und wenn man im browser den quelltext ankuckt, kommt auch nix.
php unterstützt mein server auf alle Fälle

Thx für die Hilfe
 
Sowas hab ich ja noch nie gehört, "beim transfer rausgeschnitten". Totaler Quatsch, haste
einfach mal eine testdatei erstellt in der nur das phpinfo(); kommando auftaucht. Wenn da
nix passiert unterstützt Dein server kein php oder die Endung php,php3,php4 etc. wird
nicht korrekt umgesetzt. Heisst die Datei vielleicht auch index.php und es gibt noch eine
index.html - dann ist das nämlich Sache des Servers welche er zuerst berücksichtigt.

Also, Testdatei:

<?php
phpinfo();
?>

als phpinfo.php (alternative Endungen probieren, s.o) speichern und hochladen und
aufrufen. Wenn da nix kommt, Pech gehabt und anderen provider suchen.
 
na klar hab ich die testdatei erstellt. die geht auch reibungslos

naja danke
 
Per FTP sollte der Code enthalten sein, dann wäre es ein merkwürdiger Fehler. Aber jetzt kommts.

Per HTTP wird der Code auf dem Server ausgeführt von der PHP Interpreter Engine und dort normaler HTML Code generiert, welcher dann zum Client geschickt wird. Im Quelltext des Clients/Browser wird dann nur der HTML Code angezeigt, weil dieser nie etwas anderes erhalten hat.

Ist der Quelltext nun leer, ist das dein Fehler im PHP Skript.
 
Zuletzt bearbeitet:
Poste doch mal bitte den Code, er ausgeführt werden soll. Dann kann man sicherlich genauer darauf eingehen und eventuelle Fehler lokalisieren und beseitigen.
 
versuchs ma mit error_reporting(E_ALL); . Einfach am Anfang der PHP Datei einfügen, am besten direkt unterm ersten <?
falls ein Fehler kommt kannst ja darauf reagieren. Ansonsten liegt der Fehler anderweitig

greetz
eXtiQ'
 
hm es werden keine fehler gemeldet.

hier der code (hab einige Felder rausgenommen):


PHP:
<?php

function check_len(&$check, $field, $max, &$err_field, $err="", $min=0, $min_err="")
{
  if (strlen($field) > $max)
  {
     if ($err == "")
     {
       $err = 'Feld ist zu lang';
     }
     $err_field = $err;
     $check = false;
  }
  if (strlen($field) < $min)
  {
     if ($min_err == "")
     {
       $min_err = 'Feld ist zu kurz';
     }
     $err_field = $min_err;
     $check = false;
  }
}


function check_mail(&$check, $fld, &$err_field, $err='')
{
	if (strpos($fld, '@') === false)
	{
	  if ($err=='')
	  {
        $err_field = 'e-Mail fehlerhaft';
	  } else {
		$err_field = $err;
	  }
      $check = false;
    }

	if (function_exists('checkdnsrr'))
	{
	    list($user, $host) = explode('@', $fld);
	    if ( checkdnsrr ($host, 'MX') or checkdnsrr ($host, 'A' ) )
	    {
	        // echo  'E-Mail ist OK';
	    } else {
	        if ($host > ' ')
	        {
			  if ($err=='')
			  {
	            $err_field = 'Die Angabe "' . $host . '" scheint keine gültige Domain zu sein';
			  } else {
				$err_field = $err;
			  }
	          $check = false;
	        } else {
			  if ($err=='')
			  {
		        $err_field = 'e-Mail unvollständig';
			  } else {
				$err_field = $err;
			  }
		      $check = false;
		    }
	    }
	} else {
	    // echo 'keine weitere Prüfung';
	}
}

if 
if (empty($HTTP_POST_VARS["fld_SOUNDKARTE"])) $HTTP_POST_VARS["fld_SOUNDKARTE"]="";
if (empty($err_SOUNDKARTE)) $err_SOUNDKARTE="*";
if (empty($HTTP_POST_VARS["fld_ZUBEHÖR"])) $HTTP_POST_VARS["fld_ZUBEHÖR"]="Bildschirme, Soundsysteme, Mäuse, Tastaturen, ...";
if (empty($err_ZUBEHÖR)) $err_ZUBEHÖR="*";
if (empty($HTTP_POST_VARS["fld_BITTE_AUSFÜLLEN"])) $HTTP_POST_VARS["fld_BITTE_AUSFÜLLEN"]="";
if (empty($err_BITTE_AUSFÜLLEN)) $err_BITTE_AUSFÜLLEN="*";

$checked = true;
if (isset($HTTP_POST_VARS["sent"]))
{
  
  check_len($checked, $HTTP_POST_VARS["fld_SOUNDKARTE"],37,$err_SOUNDKARTE,"Eingabe zu lang! Maximale Länge:37",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
  check_len($checked, $HTTP_POST_VARS["fld_ZUBEHÖR"],37,$err_ZUBEHÖR,"Eingabe zu lang! Maximale Länge:37",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
  check_len($checked, $HTTP_POST_VARS["fld_BITTE_AUSFÜLLEN"],37,$err_BITTE_AUSFÜLLEN,"Eingabe zu lang! Maximale Länge:37",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
}
if ( empty($HTTP_POST_VARS["sent"]) or (!$checked) )
{
?>

<?php echo $err_SOUNDKARTE ?>
</td></tr>
<tr><td valign="top">Zubehör</td><td>
<textarea name="fld_ZUBEHÖR"><?php echo $HTTP_POST_VARS["fld_ZUBEHÖR"]?></textarea>
</td><td>
<?php echo $err_ZUBEHÖR ?>
</td></tr>
<tr><td valign="top">* Bitte ausfüllen</td><td>
<input type="text" name="fld_BITTE_AUSFÜLLEN" value="<?php echo $HTTP_POST_VARS["fld_BITTE_AUSFÜLLEN"] ?>">
</td><td>
<?php echo $err_BITTE_AUSFÜLLEN ?>
</td></tr>
<tr><td>*</td><td><input type="hidden" name="sent" value="sent"><input type="submit" name="submit" value="Absenden"></td></tr>
<tr><td colspan="2">
<!-- Bitte lassen Sie den Copyrighthinweis und den Link in lesbarer Form im Formular stehen -->
</td></tr>
<tr><td colspan="2">
<font size="-2">Copyright (2001-2005) <a href="http://www.heddesheimer.de" target="_blank">Dipl.-Ing. Marian Heddesheimer</a><br><a
href="http://www.rent-a-tutor.com/tools/" target="_blank">Erstellen Sie Ihr eigenes Kontaktformular</a></font>
</td></tr>
</table></form>
<?php
  }
if (isset($HTTP_POST_VARS["sent"]) and ($checked) ) {
  $msg = "Sie haben Post ;-)\n";
  
  $msg .= "SOUNDKARTE=".$HTTP_POST_VARS["fld_SOUNDKARTE"]."\n";
  $msg .= "ZUBEHÖR=".$HTTP_POST_VARS["fld_ZUBEHÖR"]."\n";
  $msg .= "BITTE_AUSFÜLLEN=".$HTTP_POST_VARS["fld_BITTE_AUSFÜLLEN"]."\n";
  mail("anselm@houswitschka.de","Nachricht von Ihrem Formmailer",
$msg);
  echo "Email wurde gesendet an: [email]anselm@houswitschka.de[/email]<br>\n";
  echo nl2br($msg) . "<br>\n";
}
?>

thx!
 
Zuletzt bearbeitet von einem Moderator: ([PHP]-Forumtags eingesetzt)
In der Region um Zeile 70 steht ein einsames IF in einer Zeile; das mal auskommentiert, habe ich folgende Ausgabe erhalten:
 

Anhänge

  • ausgabe.gif
    ausgabe.gif
    3,6 KB · Aufrufe: 228
ne das ist nur durch die kürzung bedingt-aber danke fürs durchschaun!

ich poste nochmal den gesamten code. vielleicht ist das problem softwarebedingt...?

PHP:
<?php
function check_len(&$check, $field, $max, &$err_field, $err="", $min=0, $min_err="")
{
  if (strlen($field) > $max)
  {
     if ($err == "")
     {
       $err = 'Feld ist zu lang';
     }
     $err_field = $err;
     $check = false;
  }
  if (strlen($field) < $min)
  {
     if ($min_err == "")
     {
       $min_err = 'Feld ist zu kurz';
     }
     $err_field = $min_err;
     $check = false;
  }
}


function check_mail(&$check, $fld, &$err_field, $err='')
{
	if (strpos($fld, '@') === false)
	{
	  if ($err=='')
	  {
        $err_field = 'e-Mail fehlerhaft';
	  } else {
		$err_field = $err;
	  }
      $check = false;
    }

	if (function_exists('checkdnsrr'))
	{
	    list($user, $host) = explode('@', $fld);
	    if ( checkdnsrr ($host, 'MX') or checkdnsrr ($host, 'A' ) )
	    {
	        // echo  'E-Mail ist OK';
	    } else {
	        if ($host > ' ')
	        {
			  if ($err=='')
			  {
	            $err_field = 'Die Angabe "' . $host . '" scheint keine gültige Domain zu sein';
			  } else {
				$err_field = $err;
			  }
	          $check = false;
	        } else {
			  if ($err=='')
			  {
		        $err_field = 'e-Mail unvollständig';
			  } else {
				$err_field = $err;
			  }
		      $check = false;
		    }
	    }
	} else {
	    // echo 'keine weitere Prüfung';
	}
}

if (empty($HTTP_POST_VARS["fld_NAME_*"])) $HTTP_POST_VARS["fld_NAME_*"]="";
if (empty($err_NAME_*)) $err_NAME_*="*";
if (empty($HTTP_POST_VARS["fld_E_MAIL_ADRESSE_*"])) $HTTP_POST_VARS["fld_E_MAIL_ADRESSE_*"]="";
if (empty($err_E_MAIL_ADRESSE_*)) $err_E_MAIL_ADRESSE_*="*";
if (empty($HTTP_POST_VARS["fld_GEHÄUSE"])) $HTTP_POST_VARS["fld_GEHÄUSE"]="";
if (empty($err_GEHÄUSE)) $err_GEHÄUSE="*";
if (empty($HTTP_POST_VARS["fld_PROZESSOR"])) $HTTP_POST_VARS["fld_PROZESSOR"]="";
if (empty($err_PROZESSOR)) $err_PROZESSOR="*";
if (empty($HTTP_POST_VARS["fld_MAINBOARD"])) $HTTP_POST_VARS["fld_MAINBOARD"]="";
if (empty($err_MAINBOARD)) $err_MAINBOARD="*";
if (empty($HTTP_POST_VARS["fld_ARBEITSSPEICHER"])) $HTTP_POST_VARS["fld_ARBEITSSPEICHER"]="";
if (empty($err_ARBEITSSPEICHER)) $err_ARBEITSSPEICHER="*";
if (empty($HTTP_POST_VARS["fld_FESTPLATTE"])) $HTTP_POST_VARS["fld_FESTPLATTE"]="";
if (empty($err_FESTPLATTE)) $err_FESTPLATTE="*";
if (empty($HTTP_POST_VARS["fld_NETZTEIL"])) $HTTP_POST_VARS["fld_NETZTEIL"]="";
if (empty($err_NETZTEIL)) $err_NETZTEIL="*";
if (empty($HTTP_POST_VARS["fld_GRAFIKKARTE"])) $HTTP_POST_VARS["fld_GRAFIKKARTE"]="";
if (empty($err_GRAFIKKARTE)) $err_GRAFIKKARTE="*";
if (empty($HTTP_POST_VARS["fld_SOUNDKARTE"])) $HTTP_POST_VARS["fld_SOUNDKARTE"]="";
if (empty($err_SOUNDKARTE)) $err_SOUNDKARTE="*";
if (empty($HTTP_POST_VARS["fld_ZUBEHÖR"])) $HTTP_POST_VARS["fld_ZUBEHÖR"]="Bildschirme, Soundsysteme, Mäuse, Tastaturen, ...";
if (empty($err_ZUBEHÖR)) $err_ZUBEHÖR="*";
if (empty($HTTP_POST_VARS["fld_BITTE_AUSFÜLLEN"])) $HTTP_POST_VARS["fld_BITTE_AUSFÜLLEN"]="";
if (empty($err_BITTE_AUSFÜLLEN)) $err_BITTE_AUSFÜLLEN="*";

$checked = true;
if (isset($HTTP_POST_VARS["sent"]))
{
  check_len($checked, $HTTP_POST_VARS["fld_NAME_*"],37,$err_NAME_*,"Eingabe zu lang! Maximale Länge:37",1,"Eingabe erforderlich! Mindesteingabe Länge:1");
  check_len($checked, $HTTP_POST_VARS["fld_E_MAIL_ADRESSE_*"],37,$err_E_MAIL_ADRESSE_*,"Eingabe zu lang! Maximale Länge:37",1,"Eingabe erforderlich! Mindesteingabe Länge:1");
 check_mail($checked, $HTTP_POST_VARS["fld_E_MAIL_ADRESSE_*"], $err_E_MAIL_ADRESSE_*,"Die e-Mail enthält ungültige Zeichen oder ist ungültig.");
  check_len($checked, $HTTP_POST_VARS["fld_GEHÄUSE"],37,$err_GEHÄUSE,"Eingabe zu lang! Maximale Länge:37",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
  check_len($checked, $HTTP_POST_VARS["fld_PROZESSOR"],37,$err_PROZESSOR,"Eingabe zu lang! Maximale Länge:37",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
  check_len($checked, $HTTP_POST_VARS["fld_MAINBOARD"],37,$err_MAINBOARD,"Eingabe zu lang! Maximale Länge:37",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
  check_len($checked, $HTTP_POST_VARS["fld_ARBEITSSPEICHER"],37,$err_ARBEITSSPEICHER,"Eingabe zu lang! Maximale Länge:37",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
  check_len($checked, $HTTP_POST_VARS["fld_FESTPLATTE"],37,$err_FESTPLATTE,"Eingabe zu lang! Maximale Länge:37",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
  check_len($checked, $HTTP_POST_VARS["fld_NETZTEIL"],37,$err_NETZTEIL,"Eingabe zu lang! Maximale Länge:37",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
  check_len($checked, $HTTP_POST_VARS["fld_GRAFIKKARTE"],37,$err_GRAFIKKARTE,"Eingabe zu lang! Maximale Länge:37",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
  check_len($checked, $HTTP_POST_VARS["fld_SOUNDKARTE"],37,$err_SOUNDKARTE,"Eingabe zu lang! Maximale Länge:37",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
  check_len($checked, $HTTP_POST_VARS["fld_ZUBEHÖR"],37,$err_ZUBEHÖR,"Eingabe zu lang! Maximale Länge:37",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
  check_len($checked, $HTTP_POST_VARS["fld_BITTE_AUSFÜLLEN"],37,$err_BITTE_AUSFÜLLEN,"Eingabe zu lang! Maximale Länge:37",0,"Eingabe erforderlich! Mindesteingabe Länge:1");
}
if ( empty($HTTP_POST_VARS["sent"]) or (!$checked) )
{
?>
<form action="<?php echo $GLOBALS["PHP_SELF"] ?>" method="post"><table cellpadding="4" border="0">
<tr><td valign="top">Name *</td><td>
<input type="text" name="fld_NAME_*" value="<?php echo $HTTP_POST_VARS["fld_NAME_*"] ?>">
</td><td>
<?php echo $err_NAME_* ?>
</td></tr>
<tr><td valign="top">E-Mail-Adresse *</td><td>
<input type="text" name="fld_E_MAIL_ADRESSE_*" value="<?php echo $HTTP_POST_VARS["fld_E_MAIL_ADRESSE_*"] ?>">
</td><td>
<?php echo $err_E_MAIL_ADRESSE_* ?>
</td></tr>
<tr><td valign="top">Gehäuse</td><td>
<input type="text" name="fld_GEHÄUSE" value="<?php echo $HTTP_POST_VARS["fld_GEHÄUSE"] ?>">
</td><td>
<?php echo $err_GEHÄUSE ?>
</td></tr>
<tr><td valign="top">Prozessor</td><td>
<input type="text" name="fld_PROZESSOR" value="<?php echo $HTTP_POST_VARS["fld_PROZESSOR"] ?>">
</td><td>
<?php echo $err_PROZESSOR ?>
</td></tr>
<tr><td valign="top">Mainboard</td><td>
<input type="text" name="fld_MAINBOARD" value="<?php echo $HTTP_POST_VARS["fld_MAINBOARD"] ?>">
</td><td>
<?php echo $err_MAINBOARD ?>
</td></tr>
<tr><td valign="top">Arbeitsspeicher</td><td>
<input type="text" name="fld_ARBEITSSPEICHER" value="<?php echo $HTTP_POST_VARS["fld_ARBEITSSPEICHER"] ?>">
</td><td>
<?php echo $err_ARBEITSSPEICHER ?>
</td></tr>
<tr><td valign="top">Festplatte</td><td>
<input type="text" name="fld_FESTPLATTE" value="<?php echo $HTTP_POST_VARS["fld_FESTPLATTE"] ?>">
</td><td>
<?php echo $err_FESTPLATTE ?>
</td></tr>
<tr><td valign="top">Netzteil</td><td>
<input type="text" name="fld_NETZTEIL" value="<?php echo $HTTP_POST_VARS["fld_NETZTEIL"] ?>">
</td><td>
<?php echo $err_NETZTEIL ?>
</td></tr>
<tr><td valign="top">Grafikkarte</td><td>
<input type="text" name="fld_GRAFIKKARTE" value="<?php echo $HTTP_POST_VARS["fld_GRAFIKKARTE"] ?>">
</td><td>
<?php echo $err_GRAFIKKARTE ?>
</td></tr>
<tr><td valign="top">Soundkarte</td><td>
<input type="text" name="fld_SOUNDKARTE" value="<?php echo $HTTP_POST_VARS["fld_SOUNDKARTE"] ?>">
</td><td>
<?php echo $err_SOUNDKARTE ?>
</td></tr>
<tr><td valign="top">Zubehör</td><td>
<textarea name="fld_ZUBEHÖR"><?php echo $HTTP_POST_VARS["fld_ZUBEHÖR"]?></textarea>
</td><td>
<?php echo $err_ZUBEHÖR ?>
</td></tr>
<tr><td valign="top">* Bitte ausfüllen</td><td>
<input type="text" name="fld_BITTE_AUSFÜLLEN" value="<?php echo $HTTP_POST_VARS["fld_BITTE_AUSFÜLLEN"] ?>">
</td><td>
<?php echo $err_BITTE_AUSFÜLLEN ?>
</td></tr>
<tr><td>*</td><td><input type="hidden" name="sent" value="sent"><input type="submit" name="submit" value="Absenden"></td></tr>
<tr><td colspan="2">
<!-- Bitte lassen Sie den Copyrighthinweis und den Link in lesbarer Form im Formular stehen -->
</td></tr>
<tr><td colspan="2">
<font size="-2">Copyright (2001-2005) <a href="http://www.heddesheimer.de" target="_blank">Dipl.-Ing. Marian Heddesheimer</a><br><a
href="http://www.rent-a-tutor.com/tools/" target="_blank">Erstellen Sie Ihr eigenes Kontaktformular</a></font>
</td></tr>
</table></form>
<?php
  }
if (isset($HTTP_POST_VARS["sent"]) and ($checked) ) {
  $msg = "Sie haben Post ;-)\n";
  $msg .= "NAME_*=".$HTTP_POST_VARS["fld_NAME_*"]."\n";
  $msg .= "E_MAIL_ADRESSE_*=".$HTTP_POST_VARS["fld_E_MAIL_ADRESSE_*"]."\n";
  $msg .= "GEHÄUSE=".$HTTP_POST_VARS["fld_GEHÄUSE"]."\n";
  $msg .= "PROZESSOR=".$HTTP_POST_VARS["fld_PROZESSOR"]."\n";
  $msg .= "MAINBOARD=".$HTTP_POST_VARS["fld_MAINBOARD"]."\n";
  $msg .= "ARBEITSSPEICHER=".$HTTP_POST_VARS["fld_ARBEITSSPEICHER"]."\n";
  $msg .= "FESTPLATTE=".$HTTP_POST_VARS["fld_FESTPLATTE"]."\n";
  $msg .= "NETZTEIL=".$HTTP_POST_VARS["fld_NETZTEIL"]."\n";
  $msg .= "GRAFIKKARTE=".$HTTP_POST_VARS["fld_GRAFIKKARTE"]."\n";
  $msg .= "SOUNDKARTE=".$HTTP_POST_VARS["fld_SOUNDKARTE"]."\n";
  $msg .= "ZUBEHÖR=".$HTTP_POST_VARS["fld_ZUBEHÖR"]."\n";
  $msg .= "BITTE_AUSFÜLLEN=".$HTTP_POST_VARS["fld_BITTE_AUSFÜLLEN"]."\n";
  mail("anselm@houswitschka.de","Nachricht von Ihrem Formmailer",
$msg);
  echo "Email wurde gesendet an: [email]anselm@houswitschka.de[/email]<br>\n";
  echo nl2br($msg) . "<br>\n";
}
?>
 
Zuletzt bearbeitet:
Zurück
Oben