Autor Zpráva
Andy
Profil *
Stetol ste sa uz niekto s tym, ze kod na webe robi nieco ine ako kod na localhoste? A to nie obycajnym sposobom..
Mam kod:
<?php 
$zobraz=true;
if ((string)$GLOBALS["z"]<>'') $z=eregi_replace('[^a-z]', '', $GLOBALS['z']); else $z="";//odkadial prichadzam
  if (!empty($_POST)): // už se odeslalo
    if (!isset($_SESSION["id"])):
      echo "Uživatelské jméno a/nebo heslo nesouhlasí ";
      echo "(<a href=\"index.php?page=zabudnuteheslo\">připomenout heslo</a>)";
    
    else: 
      $zobraz=false;
      echo "<p>Přihlášen ".$_POST["prezdivka"];
      echo "<br> Vítejte!</p>";
      
    endif;
    
  endif;

if ($zobraz):
?>
  <form method="post" action="index.php?page=prihlasenie&amp;z=<?php echo $z;?>">

  <table>
    <tr>
      <td>Přezdívka:</td>
      <td><input name="prezdivka" value="<?php echo $_POST["prezdivka"];?>"></td>
    </tr>
    <tr>
      <td>Heslo:</td>
      <td><input name="heslo" type = "password" value="<?php echo $_POST["heslo"];?>"></td>
    </tr>
    <tr>
      <td colspan="2"><input type="Submit" name="odesli" value="Přihlásit"></td>
    </tr>
  </table>
  </form>
<?php  ?> 


Učite ste si všimli, že tam nieje uzatvoreny endif ale len prazdne
<?php  ?> 
. Na localhoste mi to spravne hlasi chybu.
Parse error: parse error in C:\xampp\htdocs\xampp\www\iac2\func\prihlasenie.php on line 37

Na servery to veselo vsetko zobrazi, akurat podmienka nezobrazenia
if ($zobraz):
nefunguje(formular sa zobrazi aj po odoslani).
..a ano, uz som skusal vymazat VSETKO zo serveru a nahat znovu.

Ak podmienku uzavriem tak mi server napise
Parse error: syntax error, unexpected T_ENDIF in /home/www/alternativnicentrum.cz/www/func/prihlasenie.php on line 1


Co je nezmysel, chyba predsa nieje na prvom riadku.

Viem ze sa tu nema pisat POMOC!!! Ale POMOOOOC!!
AM_
Profil
Parse error: parse error in C:\xampp\htdocs\xampp\www\iac2\func\prihlasenie.php on line 37
Těžko soudit původ této chyby, když jsi pastnul kód, co má jen 36 řádek :)

Parse error: syntax error, unexpected T_ENDIF in /home/www/alternativnicentrum.cz/www/func/prihlasenie.php on line 1
To mě neděs, buď si z tebe někdo střílí a místo PHP parseru tam sedí skřítek, co plive náhodně chyby, nebo si ty střílíš z nás a uvádíš úplně jiné soubory. Co má co dělat ENDIF na prvním řádku?
gogy27
Profil
naco je na konci <?php ?> ?
gogy27
Profil
AM_
„Parse error: parse error in C:\xampp\htdocs\xampp\www\iac2\func\prihlasenie.php on line 37“
Těžko soudit původ této chyby, když jsi pastnul kód, co má jen 36 řádek :)


Nebral by som to tak ze pastnul iba 36 riadkov, lebo po 36. riadku moze byt nejaky uplne zbytocne stlaceny enter a php vyhodi chybu az na poslednom riadku, ak je to chyba v neuzavreti niecoho.
AM_
Profil
gogy27
chyba neuzavreni cehokoli je unexpected $end tusim, nikoli parse error. Kdyby tam mel tuhle chybu, tak se nedivim. Parse error:parse error to hazi jenom na naprosty prasarny coz neocekavanej konec neni :)
gogy27
Profil
AM_
To mas taktiez pravdu to som si neuvedomil :) ale praser error nehadze aj ked chyba niekde (;) ? cize preto ma len stve ten nezmysel na 36 riadku!!!
Andy
Profil *
Ono je divne aj to, ze este predvcerom to slo. (prihlasenie som robil mesiace dozadu..). Zda sa ze sa nieco muselo posr.. na serveri.

Na to, ze stranka zacne fungovat ked dam prec posledny endif, som prisiel az vytrvalim umazavanim a nahravanim a umazavanim a nahravanim...
gogy27
Profil
Andy
len mi vysvetli co robi riadok 36.
Andy
Profil *
a kto mi neveri nech si klikne na: Odkaz alebo priamo na prihlasenie.php Odkaz
Som z toho jelen.
Andy
Profil *
Pre gogy27.

Tam ma byt po spravnosti <?php endif; ?>. Ale ked ho tam dam, tak stranka na serveri nefunguje. vid. odkazy hore. (u mna na PC to samozrejme funguje)
A ked ho tam nedam, ako je to v ukazke, tak na serveri to funguje a u mna na PC nie. Dobre, nie?
Andy
Profil *
Pre gogy27.

A co robi? Uzatvara podmienku, ze sa zobrazi prihlasovaci formular len vtedy ak prihlasenie nebolo uspesne.
gogy27
Profil
<td><input name="prezdivka" value="<?php echo $_POST["prezdivka"];?>"></td>
     <td><input name="heslo" type = "password" value="<?php echo $_POST["heslo"];?>"></td>
<td><input name="heslo" type = "password" value="<?php echo $_POST["heslo"];?>"></td>

Uvodzovky sa ti rusia musis ich opravit napr.: <td><input name="prezdivka" value="<?php echo $_POST['prezdivka'];?>"></td> a vsade tak v tychto troch ;).
Andy
Profil *
gogy27, dakujem.
Ale nepomohlo :-(
tiso
Profil
gogy27 [#12] - čo to trepeš za somariny?
AM_
Profil
gogy27
Je to kec. Uvědom si pořadí zpracování - PHP se zpracuje první.

Andy
Nevěřím tomu, že tenhle skript ti může hodit unexpeceted T_ENDIF on line 1.
v téhle podobě:
<?php 
$zobraz=true;
if ((string)$GLOBALS["z"]<>'') $z=eregi_replace('[^a-z]', '', $GLOBALS['z']); else $z="";//odkadial prichadzam
  if (!empty($_POST)): // už se odeslalo
    if (!isset($_SESSION["id"])):
      echo "Uživatelské jméno a/nebo heslo nesouhlasí ";
      echo "(<a href=\"index.php?page=zabudnuteheslo\">připomenout heslo</a>)";
    
    else: 
      $zobraz=false;
      echo "<p>Přihlášen ".$_POST["prezdivka"];
      echo "<br> Vítejte!</p>";
      
    endif;
    
  endif;

if ($zobraz):
?>
  <form method="post" action="index.php?page=prihlasenie&amp;z=<?php echo $z;?>">

  <table>
    <tr>
      <td>Přezdívka:</td>
      <td><input name="prezdivka" value="<?php echo $_POST["prezdivka"];?>"></td>
    </tr>
    <tr>
      <td>Heslo:</td>
      <td><input name="heslo" type = "password" value="<?php echo $_POST["heslo"];?>"></td>
    </tr>
    <tr>
      <td colspan="2"><input type="Submit" name="odesli" value="Přihlásit"></td>
    </tr>
  </table>
  </form>
<?php endif; ?> 

to funguje.
Andy
Profil *
Nasiel som chybu.

Ako si napisal ze to musi fungovat, tak som vymazal subor aj u mna na pc aj na serveri. A vytvoril novy kam som skopiroval ten kod co som uvietdol tu a funguje.

Pravdepodobne chyba psppadu..
Ach jo. Dva dni v perdeli.

End of story.

P.S. Hadam to niekomu pomoze pri podobnom probleme..
fuckin
Profil *
myslim ze takova blbost nikomu nepomuze. Takoveto "zahadne" problemy maji vzdy jedno spolecne. Lidsky faktor.

V nejakem debugeru to odladit ci ruzne trackovat ci testovat errory netrva 2 dny, otazka max desitek minut.
Andy
Profil *
Pre fuckin.

"dva dni" su to pre mna. Realne to bolo cca 4hod rozdelene na dva dni. (robim to po veceroch)
A k tvojej myslienke. ako taka je uplne zbytocna a nezmyselna. Clovek chybuje, to je prirodzene. Niesme stroje. A kazdy rozumny clovek ktory sem ide to vie. A preto sa nehanbia tu riesit svoje problemy alebo pomahat riesit problemy druhych.
AM_
Profil
Andy
Ano, člověk chybuje. Ale s debuggerem je odhalení takové chyby otázka ani ne 4 minut včetně času, kdy si k tomu uděláš kafe. Někdy si říkám, že by tady diskuse o PHP úplně zanikla, kdyby všichni uměli používat debugger, min. 50% problémů tady je typu "hele kilometr kódu, kde mám chybu?"
fuckin
Profil *
AM_
Mluvis mi z duse, lip to uz napsat neslo :)...jako nereknu treba poradit zpusob jak neco udelat, to je ok, ale hledat chyby v desitkach radcich kodu? Vetsinou dotycny ani nenapise tu chybu co mu to vyhodi, takove lidi bych nejradsi strilel :D...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: