Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: $_GET => $_POST

Sivun loppuun

volume [06.09.2010 12:40:08]

#

en saa parametrinvälitystä muutettua $_GET-muodosta $_POST-muotoon alla olevassa koodissa....voisko joku avittaa!

<?php

require "../../../../funktiot.php";

$yhteys = AvaaTietokanta();

// SQL-kysely - haetaan kaikki tiedot
$sql="select * from johtokunta where delflag = '1' order by id";

//suoritetaan kysely
$mysql_haun_tulos = mysql_query($sql, $yhteys);

//laitetaan taulun kentt&auml;nimet taulukkoon
echo "<table border=\"1\"><tr>
                             <th>Nimi</th>
                             <th>Osoite</th>
                             <th>LuoPvm</th>
                             <th>ModPvm</th>
                             <th>Toim</th>
                           </tr>";

// Luetaan SQL-kyselyn palauttamaa tietoa rivi rivilt&auml;
while($mysql_tiedot = mysql_fetch_array($mysql_haun_tulos)){
  echo "<tr>
          <td>". $mysql_tiedot["nimi"]."</td>
          <td>". $mysql_tiedot["osoite"]."</td>
          <td>". $mysql_tiedot["pvm"]."</td>
          <td>". $mysql_tiedot["modpvm"]."</td>
          <td><a href=\"palauttaa.php?id=" .$mysql_tiedot["id"]. "\">palauta</a></td>
        </tr>";}

  echo "</table>";

//vapautetaan hakutuloksiin k&auml;ytetty muisti
mysql_free_result($mysql_haun_tulos);

//suljetaan yhteys
mysql_close($yhteys);
?>

Matso [06.09.2010 13:35:35]

#

Siis mitä?? Missä kohtaa koodissa ilmenee muuttuja $_GET tai $_POST?

volume [06.09.2010 13:50:51]

#

<td><a href=\"palauttaa.php?id=" .$mysql_tiedot["id"]. "\">palauta</a></td>

Metabolix [06.09.2010 13:54:25]

#

Millä tavalla aiemmissa keskusteluissa esitetyn formin sijoittaminen tuohon linkin paikalle tuottaa ongelmia?

volume [06.09.2010 16:24:12]

#

tässä messu:

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /xxxx/xxxx/xxxx/xxxx/xxxx/xxxx/muuta_tietue.php on line 62

ja tässä koodi josta se tulee:

<php?
echo "<table border=\"1\"><tr>
                            <th>Nimi</th>
                            <th>Osoite</th>
                            <th>LuoPvm</th>
                            <th>ModPvm</th>
                            <th>Toim</th>
                          </tr>";

// Luetaan SQL-kyselyn palauttamaa tietoa rivi rivilt&auml;
while($mysql_tiedot = mysql_fetch_array($mysql_haun_tulos)){
   echo "<tr>
           <td>". $mysql_tiedot["nimi"]."</td>
           <td>". $mysql_tiedot["osoite"]."</td>
           <td>". $mysql_tiedot["pvm"]."</td>
           <td>". $mysql_tiedot["modpvm"]."</td>
           <td><form action="poistaa.php" method="post" >
                <input type="hidden" name="id" value=". $mysql_tiedot["id"]" />
                <input type="submit" value="Poista">
              </form>
           </td>
          </tr>";}

   echo "</table>";

?>

Grez [06.09.2010 16:26:33]

#

Jos tonne kooditageihin lisää noi <?php -tagit, niin näkee heti missä vika. Värittävän editorin käyttö ei olisi ihan turha juttu.

<?php
echo "<table border=\"1\"><tr>
                            <th>Nimi</th>
                            <th>Osoite</th>
                            <th>LuoPvm</th>
                            <th>ModPvm</th>
                            <th>Toim</th>
                          </tr>";

// Luetaan SQL-kyselyn palauttamaa tietoa rivi riviltä
while($mysql_tiedot = mysql_fetch_array($mysql_haun_tulos)){
   echo "<tr>
           <td>". $mysql_tiedot["nimi"]."</td>
           <td>". $mysql_tiedot["osoite"]."</td>
           <td>". $mysql_tiedot["pvm"]."</td>
           <td>". $mysql_tiedot["modpvm"]."</td>
           <td><form action="poistaa.php" method="post" >
                <input type="hidden" name="id" value=". $mysql_tiedot["id"]" />
                <input type="submit" value="Poista">
              </form>
           </td>
          </tr>";}

   echo "</table>";

Tarkennan vielä, että muun kuin php:n käsiteltäväksi tarkoitettujen juttujen ei pitäisi näkyä sinisenä.

volume [06.09.2010 16:52:10]

#

olen vissiin senverran värisokea, että en väritettynäkään näe heti missä vika...
ainakin <td> jälkeen puuttui ".

-tossu- [06.09.2010 17:02:24]

#

volume kirjoitti:

olen vissiin senverran värisokea, että en väritettynäkään näe heti missä vika...

PHP tulkitsee kaiken sinisen omaksi koodikseen. Jos haluat laittaa lainausmerkin tekstiin, pitää se escapettaa laittamalla \-merkki sen eteen, eli:

<?php
echo "Lainausmerkki: \" tekstiä...";
?>

volume [06.09.2010 17:37:02]

#

hei,

toivoisin jonkun tietäjän vastaavan suoraan mikä koodissa on pielessä.

toivoo nimimerkki "sokea oman koodinsa kanssa" :-)

villev [06.09.2010 17:41:38]

#

Jos haluat tulostaa lainausmerkkejä lainausmerkkien sisällä, pitää ne escapettaa eli lisätä kenoviiva (\) niiden eteen. Muutoin PHP tulkitsee, että tulostus päättyy.

Käytännön PHP-opas on muuten hyödyllistä luettavaa.

Macro [06.09.2010 18:10:17]

#

Olit aikaisemminkin osannut escapettaa lainausmerkit, miksi se nyt oli niin vaikeaa?

<?php
echo "<table border=\"1\"><tr>
                            <th>Nimi</th>
                            <th>Osoite</th>
                            <th>LuoPvm</th>
                            <th>ModPvm</th>
                            <th>Toim</th>
                          </tr>";

// Luetaan SQL-kyselyn palauttamaa tietoa rivi riviltä
while($mysql_tiedot = mysql_fetch_array($mysql_haun_tulos)){
   echo "<tr>
           <td>". $mysql_tiedot["nimi"]."</td>
           <td>". $mysql_tiedot["osoite"]."</td>
           <td>". $mysql_tiedot["pvm"]."</td>
           <td>". $mysql_tiedot["modpvm"]."</td>
           <td><form action=\"poistaa.php\" method=\"post\" >
                <input type=\"hidden\" name=\"id\" value=\"" . $mysql_tiedot["id"] . "\" />
                <input type=\"submit\" value=\"Poista\">
              </form>
           </td>
          </tr>";}

   echo "</table>";

?>

volume [06.09.2010 20:09:27]

#

kiitos neuvosta :-)

se miksi en sitä osannut johtuunee taitamattomuudesta ja ehkä myös hieman siitä, että katselin edellä annettuja esimerkkejä ja niissä ei lainausmerkkejä escapetettu -enpä sitten osannut minäkään niitä tehdä....mutta meni perille nyt!


Sivun alkuun

Vastaus

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

Tietoa sivustosta