/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
hjælp til ændringer i et mindre script
Fra : Tobias


Dato : 23-07-05 18:33

Jeg er ny i php-sproget, og ville derfor gerne have lidt hjælp til et par
enkelte ændringer i dette lille script...

1. Jeg ville gerne have min "if" sætning til både at inkludere $x og $z.
2. Jeg kunne godt tænke mig at "input-felterne" blev stående efter
at man har trykket på beregn.

på forhånd tak for hjælpen
VH Tobias

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

<html>
<body>

x / (z-1)<br><br>

<?
if ($x){
echo ($x)/($z-1);
}
else
{
?>

<FORM METHOD=POST ACTION="test.php">
x:
<input type=text name="x"><br>
z:
<input type=text name="z"><br>
<input type=submit value="beregn">
</form>

<?
}
?>

</body>
</html>

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



 
 
Rander (23-07-2005)
Kommentar
Fra : Rander


Dato : 23-07-05 21:52

Sat, 23 Jul 2005 19:32:42 +0200 brugte Tobias 43 linier på at fortælle
dette til dk.edb.internet.webdesign.serverside.php:

>1. Jeg ville gerne have min "if" sætning til både at inkludere $x og $z.

Altså, at den kun kører hvis X og Z er indtastet?

>2. Jeg kunne godt tænke mig at "input-felterne" blev stående efter
>at man har trykket på beregn.

>if ($x){

if ($x and $z) {

>echo ($x)/($z-1);
>}
>else
>{
>?>
>
><FORM METHOD=POST ACTION="test.php">
> x:
> <input type=text name="x"><br>

<input type=text name="x" value="<? print ($x); ?>"><br>

> z:
> <input type=text name="z"><br>

<input type=text name="z" value="<? print ($z); ?>"><br>

Sådan?

--
Lars Rander ** Pil ikke ved min adresse ** :(){ :&:& };:
http://rander.dk (temporarily down!)

Jeg ved ikke, om Gud eksisterer, men det vil være bedst for hans rygte,
hvis han ikke gør. (Jules Renard)


Bertel Lund Hansen (23-07-2005)
Kommentar
Fra : Bertel Lund Hansen


Dato : 23-07-05 22:40

Rander skrev:

>if ($x and $z) {

Den fejler hvis man indtaster 0 for x. Man kunne også passende
teste for om z er 1:

if (isset($x) and isset($z) and $z!=1) {

><input type=text name="x" value="<? print ($x); ?>"><br>

Det forudsætter at man sørger for at 'samle værdierne op' i
starten, og til det brug skal submitknappen have et navn:

<input type=submit name='klik' value='beregn'>

Og i starten:

$klik=$_POST['klik'];
if (isset($klik)) {
   $x=$_POST['x'];
   $z=$_POST['z'];
}

--
Bertel
http://bertel.lundhansen.dk/   FIDUSO: http://fiduso.dk/

Rander (23-07-2005)
Kommentar
Fra : Rander


Dato : 23-07-05 23:51

Sat, 23 Jul 2005 23:40:00 +0200 brugte Bertel Lund Hansen 27 linier på at
fortælle dette til dk.edb.internet.webdesign.serverside.php:

>>if ($x and $z) {
>Den fejler hvis man indtaster 0 for x.

If'en i sig selv fejler vel ikke - men du har ret i at divisionen vil
fejle...

>Man kunne også passende teste for om z er 1:
>if (isset($x) and isset($z) and $z!=1) {

Du mener vel om $z!=0 ?

>><input type=text name="x" value="<? print ($x); ?>"><br>
>Det forudsætter at man sørger for at 'samle værdierne op' i
>starten, og til det brug skal submitknappen have et navn:
><input type=submit name='klik' value='beregn'>

Korrekt, men det regnede jeg bare med at han HAVDE gjort - ellers kunne han
vel heller ikke udføre regnestykket...

--
Lars Rander ** Pil ikke ved min adresse ** :(){ :&:& };:
http://rander.dk (temporarily down!)

Det er ofte blot en undskyldning, når vi siger, noget er umuligt. (Francois de La Rochefoucauld)


Tobias (24-07-2005)
Kommentar
Fra : Tobias


Dato : 24-07-05 01:26

Tak for hjælpen indtil videre.

Mit andet spørgsmål blev vist misforstået...
Efter at man har trykket på beregn-knappen vil jeg gerne have de 2 felter,
hvori man kan indsætte z og x værdierne, til at blive stående. Således at
man ikke behøves
at trykke tilbage for at indsætte nye z og x værdier.

Ville være glad hvis der var en der, i fuld form ville poste
den reviderede udgave af det script jeg postede i det første indlæg. - Tak

VH Tobias


"Rander" <ldNOSPAM@rander.dk> skrev i en meddelelse
news:dbuhkh$gri$1@localhost.localdomain...
> Sat, 23 Jul 2005 23:40:00 +0200 brugte Bertel Lund Hansen 27 linier på at
> fortælle dette til dk.edb.internet.webdesign.serverside.php:
>
>>>if ($x and $z) {
>>Den fejler hvis man indtaster 0 for x.
>
> If'en i sig selv fejler vel ikke - men du har ret i at divisionen vil
> fejle...
>
>>Man kunne også passende teste for om z er 1:
>>if (isset($x) and isset($z) and $z!=1) {
>
> Du mener vel om $z!=0 ?
>
>>><input type=text name="x" value="<? print ($x); ?>"><br>
>>Det forudsætter at man sørger for at 'samle værdierne op' i
>>starten, og til det brug skal submitknappen have et navn:
>><input type=submit name='klik' value='beregn'>
>
> Korrekt, men det regnede jeg bare med at han HAVDE gjort - ellers kunne
> han
> vel heller ikke udføre regnestykket...
>
> --
> Lars Rander ** Pil ikke ved min adresse ** :(){ :&:& };:
> http://rander.dk (temporarily down!)
>
> Det er ofte blot en undskyldning, når vi siger, noget er umuligt.
> (Francois de La Rochefoucauld)
>



Bertel Lund Hansen (24-07-2005)
Kommentar
Fra : Bertel Lund Hansen


Dato : 24-07-05 03:33

Tobias skrev:

>Efter at man har trykket på beregn-knappen vil jeg gerne have de 2 felter,
>hvori man kan indsætte z og x værdierne, til at blive stående. Således at
>man ikke behøves at trykke tilbage for at indsætte nye z og x værdier.

I dit script stod formularen inden i en else-blok. Derfor blev
den kun vist i starten. Så snart der var gyldige værdier, blev
formularen afskåret fra at blive vist.

>Ville være glad hvis der var en der, i fuld form ville poste
>den reviderede udgave af det script jeg postede i det første indlæg. - Tak

Filen skal hedde "test.php" (eller i hvert fald skal navnet passe
med action):

========
<html>
<body>

x / (z-1)<br><br>

<?
$klik=$_POST['klik'];
// Hent værdierne fra felterne hvis der klikket på "Beregn".
if (isset($klik)) {
   $x=$_POST['x'];
   $z=$_POST['z'];
}

// Hvis der er sat værdier for x og z og z ikke er 1,
// lav da beregningen.
if (isset($x) and isset($z) and $z!=1) {
   echo ($x)/($z-1);
}
else if ($z==1) {
echo "z må ikke være 1.";
}
// Her slutter PHP. Det sikrer at formularen altid bliver vist.
?>

<form action='test.php' method='post'>
x:
<input type='text' name='x' value='<?= ($x); ?>'><br>
z:
<input type='text' name='z' value='<?= ($z); ?>'><br>
<input type=submit name='klik' value='beregn'>
</form>

</body>
</html>
========

PS. <?= er en kort skrivemåde for <? print.

--
Bertel
http://bertel.lundhansen.dk/   FIDUSO: http://fiduso.dk/

Bertel Lund Hansen (24-07-2005)
Kommentar
Fra : Bertel Lund Hansen


Dato : 24-07-05 03:15

Rander skrev:

>>>if ($x and $z) {
>>Den fejler hvis man indtaster 0 for x.

>If'en i sig selv fejler vel ikke -

Jo, brugeren indtaster et nul og får at vide at han skal indtaste
igen. Det er en fejl (men if'en gør naturligvis kun det den
bliver bedt om).

>men du har ret i at divisionen vil fejle...

Nej, den vil fejle ved z=1.

>>Man kunne også passende teste for om z er 1:
>>if (isset($x) and isset($z) and $z!=1) {

>Du mener vel om $z!=0 ?

Du overså at der blev divideret med (z-1).

>Korrekt, men det regnede jeg bare med at han HAVDE gjort - ellers kunne han
>vel heller ikke udføre regnestykket...

Han er vist en meget ny nybegynder.

--
Bertel
http://bertel.lundhansen.dk/   FIDUSO: http://fiduso.dk/

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste