Autor Zpráva
Adrifinel
Profil
<?
include "php/spojeni.php";
    $spojeni1 = $connect;
   MySQL_Select_DB("$db");


if (!empty($jmeno)) { // Pokud je uživatel přihlášen:
    $query_udaje = MySQL_Query("SELECT * FROM users WHERE jmeno LIKE '$jmeno'"); // Načti uživatele z DB
    $data_udaje = MySQL_Fetch_Array($query_udaje);

$email = $data_udaje["email"];
    $typ = $data_udaje["typ"];
    
    $ikonka = $data_udaje["ikonka"];
$posts = $data_udaje["posts"];
$hodnost = $data_udaje["level"];
$nposts = $posts + 1;
$vysl2 = MySQL_Query("UPDATE users SET posts = '$nposts' WHERE jmeno LIKE '$jmeno'");


     $date = Date('Y-m-j');
      $time = Date('H:i:s');



     if ($where == "Digi News"):
     $filename = "./diginews/".$ID.".txt";
$prikaz = MySQL_Query("SELECT * FROM `diginews` WHERE ID LIKE '$ID'");
 $radek = MySQL_Fetch_Array($prikaz);
 $ctenari = $radek["prispevky"];
 $newctenari = $ctenari + 1;
$vysl2 = MySQL_Query("UPDATE diginews SET prispevky ='$newctenari' WHERE ID LIKE '$ID'");
 $prikaz = MySQL_Query("SELECT nadpis FROM `diginews` WHERE ID LIKE '$ID'");
         $radek = MySQL_Fetch_Array($prikaz);
         $tema = $radek["nadpis"];
       $vysl2 = MySQL_Query("INSERT INTO posts VALUES (NULL,'$jmeno','$text','$tema','$date','$time')");
       echo "<META HTTP-EQUIV='refresh' content='0;URL=../viewdiginews.php?ID=".$ID."&page=last&hlaska=Váš komentář ke zprávě byl přidán, děkujeme.#last'>";
       
       $fp = @FOpen($filename, "r");
 $obsah = @FRead($fp, FileSize($filename));
 @FClose($fp);
 $fp = @FOpen($filename, "w");
    FPutS($fp, '    <!-- začátek příspěvku  -->
   <div class="forum">
                        <div class="info">
                            <a href="userprofile.php?info='.$jmeno.'" title="Zobrazit profil uživatele">'.$jmeno.'</a>
                            <img src="ikonky/'.$typ2.'/'.$ikonka.'.png" alt="awatárek autora příspěvku" style="width: 59px; height: 57px">
                            <div>
                            <a href="userprofile.php?info='.$jmeno.'">'.$printemail.'</a>
                                <div class="box">
                                    <a href="userprofile.php?info='.$jmeno.'">počet příspěvků: '.$nposts.'</a><br>
                                    <a href="userprofile.php?info='.$jmeno.'">hodnost: '.$hodnost.'</a>
                                </div>
                                <p>'.Date('j.m.Y')." - ".Date('H:i').'</p>
                            </div>
                        </div>
                        <div class="text">
                            <p>');
          $texta = "".$text." ";
     //                       $search = "http://";
       //                     $httppos = StrPos($text, $search);
//   if  ($httppos != 0 || $texta[0]== "h"):
 //       $http = SubStr($texta, $httppos + 1, (StrLen($texta)));
   //    $endread = StrPos($http, " ") + $httpos;
     //   $http =  SubStr($texta, $httppos, $endread + 1);
       // $predhttp = SubStr($texta, 0, $httppos);
      //  $zahttp = SubStr($texta, ($endread + $httppos + 1), (StrLen($texta) - $endread));
     //  $texta = "".$predhttp."<a href='".$http."' target='_blank'>".$http."</a>".$zahttp."";
 //  endif;
$texta = htmlspecialchars($texta); 
$texta = eregi_replace ("-sm1-", "<img src=img/smiles/sm1.png height=15>", $texta);
$texta = eregi_replace ("-sm2-", "<img src=img/smiles/sm2.png height=15>", $texta);
$texta = eregi_replace ("-sm3-", "<img src=img/smiles/sm3.png height=15>", $texta);
$texta = eregi_replace ("-sm4-", "<img src=img/smiles/sm4.png height=15>", $texta);
$texta = eregi_replace ("-sm5-", "<img src=img/smiles/sm5.png height=15>", $texta);
$texta = eregi_replace ("-sm6-", "<img src=img/smiles/sm6.png height=15>", $texta);
$texta = eregi_replace ("-sm7-", "<img src=img/smiles/sm7.png height=15>", $texta);
$texta = eregi_replace ("-sm8-", "<img src=img/smiles/sm8.png height=15>", $texta);
$texta = eregi_replace ("-sm9-", "<img src=img/smiles/sm9.png height=15>", $texta);
$texta = eregi_replace ("-sm10-", "<img src=img/smiles/sm10.png height=15>", $texta);
$texta = eregi_replace ("-sm11-", "<img src=img/smiles/sm11.png height=15>", $texta);
$texta = eregi_replace ("http://", "<a href=http://", $texta);
$texta = eregi_replace ("-sm12-", " target='_blank'>==Odkaz==</a>", $texta);
$texta = stripslashes($texta);



    FPutS($fp, StripSlashes(NL2BR($texta)));
    FPutS($fp, "   </p>
                    </div>
                </div>
        ");
  FPutS($fp, $obsah);
      FClose($fp);  ?>

Prosím o pomoc s tímto kódem. Zkoušela jsem to různě editovat, ale dostává se jen k dalším syntax errorům...


chyba: Parse error: syntax error, unexpected $end in /var/www/web5/digitalnimonstra.cz/digitalnimonstra.cz/php/adddigikomentar.php on line 94
mimochodec
Profil
A který řádek tu chybu vyvolá, neprozradíš?

// edit po doplnění řádku:
Někde otvíráš závorku a chybí její uzavření. Kdyby sis kód trochu slušně formátovala, hledalo by se ti to mnohem rychleji.
Adrifinel
Profil
mimochodec:
Jo, jsem si uvědomila, že jsem zapomněla vložit chybový řádek.

Ten 94 řádek je úplně ten poslední...

Jo, ale kde. Zkouším to marně najít.
ps. tím formátováním myslíš přesně, co?
mimochodec
Profil
Adrifinel:
Formátováním myslím to, že třeba ř. 11-22 by mohly vypadat takto:
  $email = $data_udaje["email"];
  $typ = $data_udaje["typ"];
    
  $ikonka = $data_udaje["ikonka"];
  $posts = $data_udaje["posts"];
  $hodnost = $data_udaje["level"];
  $nposts = $posts + 1;
  $vysl2 = MySQL_Query("UPDATE users SET posts = '$nposts' WHERE jmeno LIKE '$jmeno'");
 
  $date = Date('Y-m-j');
  $time = Date('H:i:s');

Když budeš odsazovat jen uvnitř závorek, uvidíš, kde začíná a končí obsah každého if, while a for. jestli dobře koukám, nemáš uzavřenou tu závorku, která začíná na ř. 7. Odhadl bych, že to uzavření patří úplně na konec.
panther
Profil
Adrifinel:
stáhni si nějaký editor, který označuje související závorky (téměř každý). Uvidíš hned, ke které ti chybí dvojče.
Adrifinel
Profil
mimochodec:

Na konec jsem ji zkoušel dát "}" ale píše mi to, že tomu překáží:

Parse error: syntax error, unexpected '}' in /var/www/web5/digitalnimonstra.cz/digitalnimonstra.cz/php/adddigikomentar.php on line 94

panther:
Zkouším rozjet phpide...
panther
Profil
Adrifinel:
a měla by sis ujednotit styl zápisu. Jednou za ifem máš složené závorky, podruhé . Teď mě napadá, že ten „dvojtečkový“ if z ř. 26 nemáš uzavřený, (pravděpodobně) koncový endif máš zakomentovaný na ř. 69.

Pokud jsem se netrefil, použij nějaký obarvující textový editor, na hledání chybějící závorky diskusi nepotřebuješ.
Adrifinel
Profil
panther:
Jaký máš namysli...
Mám noteppad+++ - nevidím tam nic, obarveného.
Mám phpide... taktéž tam nevidím nic obarveného...

(kdyžtak hodím screen)
panther
Profil
Adrifinel:
třeba PSPad (i jistě i mnoho dalších).
Adrifinel
Profil
panther:
I ten mám, ale prostě tu zvýrazněnou syntaxi nevidím... tedy ne, ty závorky. Vidím, sice barevnej text, ale ti závorky ne...
Darker
Profil
Adrifinel:
Klikni si na závorku na řádku 7. Bude červená. To není dobré znamení.



$texta = eregi_replace ("-sm1-", "<img src=img/smiles/sm1.png height=15>", $texta);
Co takhle se jména a adresy smajlíků dát do pole?
$smajlici = array(array("-sm1-", "img/smiles/sm1.png"),array("-sm2-", "img/smiles/sm2.png"));
A v případě, že jsou názvy a cesty k souborům systematické použíj regulární výraz:
\-sm(0-9){2}\-
Má to tu mouchu, že se nahradí i neexistující smajlíci, ale nezdá se mi to jako zásadní problém, když se podívám na tvůj kód.
panther
Profil
Adrifinel:
když si na závorku klikneš (a máš zapnuté zvýraznění PHP syntaxe, nebo multihighlighter tuším), obarví se ti párová závorka.

Ale to teď není předmětem tématu, spočítej si závorky a najdi si tu chybějící. Já (ani nikdo jiný) to za tebe dělat nebudu.
Adrifinel
Profil
Darker:
No závorky by měly být už v pořádku. Alespoň, to nehází žádnou chybovou hlášku. Teď zase hledám důvod, proč se mi to nezapisuje do db...
Takže jdu hledat důvod.

ps. v čem si klikal?
Darker
Profil
Samozřejmě v PS padu. Na řádku 82 si s tím narazováním odkazů koleduješ o injection. Respektive, pokud ti to funguje tak, že to nahradí http://text čímž si moc jistý nejsem.
Adrifinel
Profil
Darker:
Vím, že koleduji, ale já se v tom moc nevyznám. Když dám nějakou nabídku, tak no spolupráce je taková, že si nejsem jistá, jestli by u toho někdo vydržel ani kdybych mu za to platila.
Tak se holt musím pokusit to nějak sama upravit. :)

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: