Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Url-muuttujien siirto ei toimi

Sivun loppuun

jumitusta [08.11.2009 10:48:24]

#

Mikähän mahtaa olla vialla, kun en saa millään siirrettyä muuttujan arvoa sivulta toiselle, jos arvo on myös muuttuja eikä esim. jokin tietty luku.

Testisivuni(testi.html) näyttää tältä:

<html>
<head>
</head>

<?php
$yht=500;
?>

<body>
<form method="post" action="testi.php?summa2=$yht"><br>
<input value="Lähetä Tilaus" type="submit"></form>
</body>
</html>

ja testi.php näyttää tältä:

<?php
$yhteensa=$_GET['summa2'];
echo $yhteensa;
?>

Tämä tulostaa: $yht
eikä: 500 niin kun pitäisi, missä vika?

Teuro [08.11.2009 10:55:04]

#

No sinähän lähetät tuolla nimenomaan merkkijonon '$yht', tällä ei ole mitään tekemistä php:n muuttujamerkin '$' kanssa. Sinun pitää muodostaa tuo muuttuja php:n avulla seuraavasti.

<?php
<html>
<head>
</head>

<?php
$yht=500;
?>

<body>
<?php
echo "<form method=\"post\" action=\"testi.php?summa2={$yht}\"><br>";
?>
<input value="Lähetä Tilaus" type="submit"></form>
</body>
</html>

ja testi.php näyttää tältä:
<?php
$yhteensa=$_GET['summa2'];
echo $yhteensa;
?>

Macro [08.11.2009 11:24:52]

#

jumitusta kirjoitti:

Testisivuni(testi.html)

Lisäksi sivun päätteen tulee olla .php, koska sivulla on PHP-koodia.

Teuro [08.11.2009 11:26:55]

#

Macro: voit käskeä apachea ohjaamaan myös .html tiedostot php-tulkin lävitse.

Macro [08.11.2009 11:37:04]

#

Niin voi, mutta jollei äskeisestä koodista löytänyt virhettä, niin en oleta käyttäjän osaavan tehdä sitä. Tietenkin saatan olla väärässä, tai jos sivut ovat vaikka toisella palvelimella.

alker [08.11.2009 12:05:27]

#

Voisit laittaa sen silleen että se on hiddenetty input niin se lähettäisi se post-illa ja se olisi helpointa käsitellä

Teuro [08.11.2009 12:10:16]

#

Alker: mitä kummaa höliset? Mikäli sen laittaisi hidden inputtiin, niin tulos olisi ihan sama, koska php ei käsittele tuota niin kuin aloittaja luulee.

jumitusta [08.11.2009 12:32:01]

#

Kiitos Teuro, tuo ratkaisi ongelman!

alker [08.11.2009 17:18:34]

#

Teuro:Mutta jos php.ini:ssä on niin että tarkistaa html formaatissa olevat niin toimii -_-

Metabolix [08.11.2009 17:23:03]

#

alker: Ei sekään toimi, koska kyseinen kohta ei ole PHP-tagien sisällä. Sitä paitsi käsiteltäviä tiedostopäätteitä ei säädetä PHP:n asetuksista vaan palvelimen.

alker [08.11.2009 20:14:37]

#

Palvelin on tietokone? Sinun pitää säätää se php.inistä joka on palvelimella tarkoitin.

Teuro [08.11.2009 20:17:49]

#

alker kirjoitti:

Palvelin on tietokone?

On palvelin on toki tietokone.

alker kirjoitti:

Sinun pitää säätää se php.inistä joka on palvelimella tarkoitin.

Ei vaan httpd.conf tiedostosta, jos käytössä on apache.

Metabolix [08.11.2009 20:23:55]

#

alker kirjoitti:

Palvelin on tietokone?

Palvelimella tässä yhteydessä tarkoitin HTTP-palvelinta (palvelinohjelmaa) kuten Apachea tai lighttpd:tä.

Kun noin viisas olet, niin näytäpä minulle se php.ini-tiedoston rivi, jolla pystyt tuon asetuksen asettamaan.

netman87 [08.11.2009 22:41:59]

#

vaihdappas html tiedoston päätteeksi se php ja muuta koodista $yht kohta näin.

<form method="post" action="testi2.php?summa2=<?php echo urlencode($yht);?>">

Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta