WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Probleme mit PhP (http://www.wcm.at/forum/showthread.php?t=157100)

suRe 27.01.2005 13:50

Probleme mit PhP
 
Hallo leute, ich schreibe im moment ein News script doch nun hab ich so ein scheiss Fehler im script und komme nicht mehr weiter.

Ok Hier erstmals mein code......

PHP-Code:


<html>
<head>

    <? include "dat/config.inc.php" ?>
     <title> News_script Erfassungsformular</title>
     <link rel="stylesheet" href="anzeige.css" type="text/css">
</head>
<body bgcolor="#ffffff">

<?
if ($gesendet)
{
$db mysql_connect($server$user$pass);



 
$mysqlab "INSERT INTO navi (name, link) VALUES ('$nm' , '$li' )";
 
$abfrage mysql_db_query("self_test"$mysqlab);
 
$num mysql_affected_rows();

 if (
$num>0)
 {
  echo 
"

<font color=green> Es wurden ein Datensatz hinzugefügt  </font></p>"
;
 echo 
"

&nbsp</p> 

&nbsp</p>"
;
 }
  else 
 {
 echo 
"

<font color=red> Es ist ein Fehler aufgetreten, der Datensatz konnte nicht hinzugefügt werden </font></p>"
;
 echo 
"

&nbsp</p> 

&nbsp</p>"
;
 }
 
mysql_close($db);



?>


</head>

<body>

<form action="navi_eingabe.php" method="post">

<table align="center" width="400">
 <tr>
  <td><h2>Name: </h2></td>
  <td><input type="text" name="nm"></td>
 </tr>
 <tr>
  <td><h2>Link: </h2></td>
  <td><input type="text" name="li"></td>
 </tr>
 <tr>
  <td> <input type="submit" name="gesendet"></td>
  <td> <input type="reset"></td>
 </tr>
</table>
</form>




</body>
</html>

Nun hab ich ne index datei erstellt, doch wen ich diesen code im Body der Tabelle include kommt immer die Ausgabe:


Notice: Undefined variable: gesendet in C:\Programme\Apache Group\Apache2\htdocs\self\php\scripts\news\backbon e\news_eingabe.php on line 11

Mir ist nun nicht klar wiso diser scheiss Fehler auftritt...... ich denke mir da er die Variabel noch nicht "kennt".....

Komisch ist noch, wen ich die Datei nicht include, sondern nur aufrufe funktionierts ohne Probleme.

schera 27.01.2005 14:01

Der Fehler müsste demnach in der Zeile

<? include "dat/config.inc.php" ?>

liegen bzw. in der config.inc.php die du ja includest.

Vielleicht postest du mal die config.inc.php ...

schera

suRe 27.01.2005 14:06

denke ich im diesem Fall weniger, den die funktion wird ja aufgerufen sobald man im Formular den "Submit" button klickt.....

...doch hier die config.inc.php:

PHP-Code:


<?
    
// Mysql Verbindungs Daten

$server "localhost";
$user "*****";
$pass "*****";
$database ="self_test";


?>

ich brauche die config so oder so nur um die variabeln für den mysql connect zu speichern

T.dot 27.01.2005 14:15

wie wärs wenn du einfach mal in $gesendet was reinschreibst oder die Variable vorher deklarierst?

if ($gesendet) wird halt nicht funktionieren, weil nirgendwo die Variable gesetzt wird. Wenn $gesendet ein Button sein soll, dann greif bitte mit $_POST['gesendet'] darauf zu und dort steht dann auch nicht 1 drinn sonder norm. die Value des Buttons.

Nachdem in deiner Include Datei nur Variablen deklariert werden hat dies auch nix mit dem Aufruf der mysql-connect funktion zu tun.

mfg Thomas

suRe 27.01.2005 14:19

okei test ich mal aber kannst du mir noch erklären wiso es ohne Fehler funktioniert wen ich das script selber aufrufe und Fehler ausgibr sobald ich es include?

T.dot 27.01.2005 14:24

du könntest auch noch probieren das include vor allen HTML Tags zu machen (wos eigentlich hin gehört). Dann kannst du es noch ohne Shorttags probieren also <?php ?> statt <? ?> verwenden, denke aber das sollte keinen Unterschied machen.

suRe 27.01.2005 14:44

ok danke für deinen aufwand,

doch leider funktioniert die scheisse noch immer nicht, naja egal....

käptn 28.01.2005 10:47

http://php.net/manual/en/language.va...s.external.php

Wenn's das nicht ist: Nicht auf den Submit-Button vertrauen, denn der wird bei einigen Browsern nur mitgesendet, wenn man wirklich draufklickt.

~

Dane 28.01.2005 21:04

mach:
PHP-Code:

if(isset($gesendet)).. 

oder besser ist
PHP-Code:

if(isset($_POST['gesendet']))... 


AlexanderFX 28.01.2005 22:43

PHP-Code:

include "dat/config.inc.php"
....
if (
$_POST["gesendet"]) 
....

  <
td> <input type="submit" name="gesendet"></td

so würde ich das ganze machen
nach dem include ein ;
dann $_POST[] solltest verwenden sonst kann es probleme geben

sag wenns funktioniert
i glaub es liegt am strichpunkt

schaut so aus wie das abfragescript von galileo computing


Alle Zeitangaben in WEZ +2. Es ist jetzt 05:41 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag