Ubuntu Suomen keskustelualueet

Ubuntun käyttö => Ohjelmointi, palvelimet ja muu edistyneempi käyttö => Aiheen aloitti: Haaki - 16.10.07 - klo:18.40

Otsikko: PHP-TIEDOSTO OMALLA PALVELIMELLA
Kirjoitti: Haaki - 16.10.07 - klo:18.40
Elikäs, eipä näy oikein jostain syystä php tuolla meikäläisen palvelimella. Palvelinkoneena on Debian 4.0 ja Serveriohjelmisto on lähinnä Ubuntun LAMP-asennus wikin mukaan asennettu. tässä sama tiedosto eri palvelimilla:

Ei toimi http://hauvis.sytes.net:3000/hauki/muokattu.php (http://hauvis.sytes.net:3000/hauki/muokattu.php)

Ääkköset kusevat phnetillä koska palvelimeni käyttää UTF-8 mutta se ei ole ongelma vaan koodin toimivuus:

http://koti.phnet.fi/makitupa/muokattu.php (http://koti.phnet.fi/makitupa/muokattu.php)

Mikähän neuvoksi että lähtis pelaamaan?
Otsikko: Vs: PHP-TIEDOSTO OMALLA PALVELIMELLA
Kirjoitti: Tuxer - 16.10.07 - klo:19.33
Laita se koodi johonkin näkyviin. Muuten on paha sanoa mikä on vikana.
Otsikko: Vs: PHP-TIEDOSTO OMALLA PALVELIMELLA
Kirjoitti: Haaki - 16.10.07 - klo:19.42
<html>
<head><title>Muta-paidan tilaus</title></head>

<body>
<h1>Muta-paita</h1>
<p>TÄYTÄ TIETOSI TÄHÄN, NIIN ILMOTAMME SINULLE SÄHKÖPOSTILLA KUN MEILLÄ ON 20 TILAAJAA, NIIN TILAAMME PAIDAT!</p>


<?php
  $lomake_ok = $_POST["lomake"];
  if ($lomake_ok) {
    // tarkistetaan vaaditut tiedot
   
    if (!$_POST["etunimet"]) {
      $en_virhe = true;
      $lomake_ok = false;
    }
    if (!$_POST["sposti"]) {
      $sp_virhe = true;
      $lomake_ok = false;
    }

    // pyrit奮 lis奭奮 tietokantaan
    if ($lomake_ok) {
      mysql_pconnect("localhost","XXXXXXX","XXXXXXXX")
        or die("Tietokantayhteys ei toimi, kokeile myöhemmin!");
      mysql_select_db("ilmoittautuminen");
         
         $etunimet = strip_tags(rawurldecode($_POST["etunimet"]));
         $sposti = strip_tags(rawurldecode($_POST["sposti"]));
      $lisays =
        "INSERT INTO ilmoittautuminen (etunimet, sposti)".
        "  VALUES ('$etunimet', '$sposti')";
      $lisays_ok = mysql_query($lisays);
      if ($lisays_ok) {
        echo "<p><b>Olet lisätty paitalistaan onnistuneesti!</b></p>";
      } else {
        echo "<p><b>Epäonnistui,";
        echo "Yritä myöhemmin uudestaan!</b></p>";
      }
    }
  }
?>

<?php
  if (!$lomake_ok):
    if ($en_virhe or $sp_virhe) {
      echo "<p style='color: red'>Täytä puuttuvat tiedot!</p>";
    }
?>
<!-- ilmoittautumislomake -->
<form action="muokattu.php" method="POST">
<!-- k嵫etty tieto ilmoittaa lomakkeen l婥tt宩sest䠭->
<input type="hidden" name="lomake" value="ok">
<table>
 
 <tr>
  <td <?php if ($en_virhe) echo "style='color: red'"; ?>>
    <b>Nick:</b>
  </td>
  <td>
   <input type="text" name="etunimet" size="30" maxlength="50"
          value="<?= $_POST["etunimet"] ?>">
  </td>
 </tr>
 <tr>
  <td <?php if ($sp_virhe) echo "style='color: red'"; ?>>
   <b>Sähköposti:</b>
  </td>
  <td>
    <input type="text" name="sposti" size="30" maxlength="50"
          value="<?= $_POST["sposti"] ?>">
  </td>
 </tr>
 <tr>
  <td></td>
  <td>
   <input type="submit" value="Ilmoittaudu"><br>
   <input type="reset" value="Tyhjennä">
  </td>
 </tr>
</table>
</form>
<?php
  endif;
?>

</body>
</html>
Otsikko: Vs: PHP-TIEDOSTO OMALLA PALVELIMELLA
Kirjoitti: Tuxer - 16.10.07 - klo:19.59
Koodia: [Valitse]
   <input type="text" name="etunimet" size="30" maxlength="50"
          value="<?= $_POST["etunimet"] ?>">

Noita lyhyitä tägejä ei kannata käyttää (<?). Ne ei toimi välttämättä kaikilla palvelimilla. Joten jos tuolla palvelimella on nuo short tagit otettu pois niin tuo ei toimi.
Otsikko: Vs: PHP-TIEDOSTO OMALLA PALVELIMELLA
Kirjoitti: Haaki - 16.10.07 - klo:20.44
http://hauvis.sytes.net:3000/hauki/muokattu.php

nyt on <?php eipä toimi vielkään hmm hmm hmm, onnistuuhan se tietty erilaisellakin tekniikalla vamaan mutta pitäsi tän toimia.
Otsikko: Vs: PHP-TIEDOSTO OMALLA PALVELIMELLA
Kirjoitti: Haaki - 16.10.07 - klo:21.17
ööhöm phnetissä ei lähde ollenkaan toimimaan kun laittaa <?php tonne tableen... outoa outoa...

pitikin laittaa <?php echo $_POST :) nyt toimiikin.
Otsikko: Vs: PHP-TIEDOSTO OMALLA PALVELIMELLA
Kirjoitti: peran - 16.10.07 - klo:21.25
Koodia: [Valitse]
   <input type="text" name="etunimet" size="30" maxlength="50"
          value="<?= $_POST["etunimet"] ?>">

Noita lyhyitä tägejä ei kannata käyttää (<?). Ne ei toimi välttämättä kaikilla palvelimilla. Joten jos tuolla palvelimella on nuo short tagit otettu pois niin tuo ei toimi.

Lieneen näin muutettuna:
Koodia: [Valitse]
  <input type="text" name="etunimet" size="30" maxlength="50"
          value="<?php echo $_POST["etunimet"?>">
Otsikko: Vs: PHP-TIEDOSTO OMALLA PALVELIMELLA
Kirjoitti: Haaki - 16.10.07 - klo:22.23
kyllä vain