"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

php - prob

Luki 29.06.2002 - 10:12 4484 66
Posts

Luki

UNDER CONSTRUCTION
Avatar
Registered: Feb 2002
Location: 127.0.0.1
Posts: 2347
hi leutz hab an ****** bug in php
wahrscheinlich hat er irgendein prob beim variablen übergeben.
das problem ist, dass es beim zweiten aufruf der seite, mit variablen in der url, auch die fehler ausgiebt(alles fehlt)

Code: PHP
index.php:
<form action="index.php" method="get">
Tag:<input type="text" name="Tag">
<br>
Monat:<input type="text" name="Monat">
<br>
Jahr:<input type="text" name="Jahr">
<BR>
Ihr Text:<input type="text" name="Eingabe">

<input type="submit" value="Go">
<br>
<?php
include("control.php");
?>
control.php:
<?php

function check($Tag,$Monat,$Jahr,$Eingabe)
{
$fehler = 0;
 if(strlen($Tag) != 0)
 {
  echo "Tag fehlt";
  $fehler++;
 }

 if(($Tag=0) or ($Tag>31))
 {
  echo "Ungültiger Tag";
  $fehler++;
 }


 if(strlen($Monat) != 0)
 {
  echo "Monat fehlt";
  $fehler++;
 }

 if(($Monat=0) or ($Monat>12))
 {
  echo "Ungültiger Monat";
  $fehler++;
 }


 if(strlen($Jahr) != 0)
 {
  echo "Jahr fehlt";
  $fehler++;
 }

 if(($Jahr<2001) or ($Jahr>2005))
 {
  echo "Ungültiges Jahr";
  $fehler++;
 }



 if(strlen($Eingabe) != 0)
 {
  echo "Text fehlt";
  $fehler++;
 }
echo "Tag",$Tag;
$fehler = urldecode($fehler);
} /* ENDE DER FUNCTION check_all */
?>
Bearbeitet von Ringding am 29.06.2002, 10:51

Ringding

Pilot
Avatar
Registered: Jan 2002
Location: Perchtoldsdorf/W..
Posts: 4300
Du schreibst ja nicht mal, was überhaupt das Problem ist. Glaubst, irgendwer hat da die Muße, das durchzuackern?

Daher: Reduzieren auf ein Minimum, bei dem der Bug sich zeigt und gezielt fragen. Wenn du so weit bist, kommst wahrscheinlich eh schon selber drauf, was das Problem ist.

Luki

UNDER CONSTRUCTION
Avatar
Registered: Feb 2002
Location: 127.0.0.1
Posts: 2347
sry, hab ich vergessen

habs oben hinzueditiert

Ringding

Pilot
Avatar
Registered: Jan 2002
Location: Perchtoldsdorf/W..
Posts: 4300
Ich seh ja nicht mal, dass die Funktion irgendwie aufgerufen wird.

Luki

UNDER CONSTRUCTION
Avatar
Registered: Feb 2002
Location: 127.0.0.1
Posts: 2347
Code:
index.php:
<form action="index.php" method="get">
Tag:<input type="text" name="Tag">
<br>
Monat:<input type="text" name="Monat">
<br>
Jahr:<input type="text" name="Jahr">
<BR>
Ihr Text:<input type="text" name="Eingabe">

<input type="submit" value="Go">
<br>
<?php
include("control.php");
[B]check($Tag,$Monat,$Jahr,$Eingabe);[/B]
?>
control.php:
<?php

function check($Tag,$Monat,$Jahr,$Eingabe)
{
$fehler = 0;
 if(strlen($Tag) != 0)
 {
  echo "Tag fehlt";
  $fehler++;
 }

 if(($Tag=0) or ($Tag>31))
 {
  echo "Ungültiger Tag";
  $fehler++;
 }


 if(strlen($Monat) != 0)
 {
  echo "Monat fehlt";
  $fehler++;
 }

 if(($Monat=0) or ($Monat>12))
 {
  echo "Ungültiger Monat";
  $fehler++;
 }


 if(strlen($Jahr) != 0)
 {
  echo "Jahr fehlt";
  $fehler++;
 }

 if(($Jahr<2001) or ($Jahr>2005))
 {
  echo "Ungültiges Jahr";
  $fehler++;
 }



 if(strlen($Eingabe) != 0)
 {
  echo "Text fehlt";
  $fehler++;
 }
echo "Tag",$Tag;
$fehler = urldecode($fehler);
} /* ENDE DER FUNCTION check_all */
?>

sorry, habs oben aus versehen gelöscht

Guest

Deleted User
Registered: n/a
Location:
Posts: n/a
schaut nach trivialgschicht aus.
tus debuggen und komm dann mit den ergebnissen wieder ... :o

Luki

UNDER CONSTRUCTION
Avatar
Registered: Feb 2002
Location: 127.0.0.1
Posts: 2347
mit was debuggen

ie zeigt beim zweiten mal aufrufen mit variablen dasselbe wie beim ersten mal an

Vir@s

Code Monkey
Registered: Nov 2000
Location: Wien
Posts: 730
Und geht des Zeug jetzt übahaupt ned oder nur wenn man es nochmal aufruft? Ich versteh des Problem ned ganz!

*wennsichdieleutenurmalgscheideinrückenangewöhnenkönnten*

Mfg, Vir@s

Luki

UNDER CONSTRUCTION
Avatar
Registered: Feb 2002
Location: 127.0.0.1
Posts: 2347
es geht nicht
er übergibt zu control.php keine variablen
an was kann das liegen?

Vir@s

Code Monkey
Registered: Nov 2000
Location: Wien
Posts: 730
Weißt was ich ned ganz check?

warum des if(strlen($Tag) != 0) .... usw?

Ich mein wenn was eingegeben wurde dann is ja klar des das länger als 0 ist oder? Und so wie du des da stehen hast wird immer wenn was eingegeben ist ein Fehler angezeigt!

Mfg, Vir@s

Luki

UNDER CONSTRUCTION
Avatar
Registered: Feb 2002
Location: 127.0.0.1
Posts: 2347
das ist nur falls er nichts eingibt

hoppla jetzt kommts mir

!= durch == ersetzen

aber irgendwas funzt da trotzdem net, denn ich hab mal ne variable per echo ausgeben lassen und die war 0

Vir@s

Code Monkey
Registered: Nov 2000
Location: Wien
Posts: 730
Ich glaub auch == und ned != :)

Probier mal die Funktion check ohne Parameter aufzurufen, die vars sollten eh nach unten hin vererbt werden!

Also wenn du control.php mit include einbindest sind $Tag, usw sowieso auch schon definiert!

Mfg, Vir@s

Guest

Deleted User
Registered: n/a
Location:
Posts: n/a
bezüglich debuggen:
es gibt a suppa funktion namens phpinfo()
es gibt ein echo mit dem du dir varinhalt ausgeben lassen kannst.
...

:o

Vir@s

Code Monkey
Registered: Nov 2000
Location: Wien
Posts: 730
Zitat von .deRElict.
bezüglich debuggen:
es gibt a suppa funktion namens phpinfo()
es gibt ein echo mit dem du dir varinhalt ausgeben lassen kannst.
...

:o

:D :D :D

Naja, weißt eh wie des mim debuggen ist, am Anfang macht mas ned weil mans ned kennt, dann macht mas ned weil man zu faul is und es lieber die anderen machen lässt, und wenn man endlich mal so gut ist und erkennt des man debuggen soll macht man keine Fehler mehr :)

Luki

UNDER CONSTRUCTION
Avatar
Registered: Feb 2002
Location: 127.0.0.1
Posts: 2347
DANKE ALLE miteinander

das liebe ich an oc.at
man postet ne frage wo man auch etwas denken muss und
spätestens zwei stunden später hat man gleich mehrere antworten von kompetenten leuten

DANKE OC.at
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz