Autor | Zpráva | ||
---|---|---|---|
l564 Profil |
#1 · Zasláno: 6. 2. 2011, 15:14:56
Tak zase mi to hlasí error , a nevím si rady
$ulozfinal ='<A HREF="'.$odkaz.'" TARGET="_blank">'.$titulek.'</A><small><B>Přidal : </B><A HREF="mailto:'.$email.'">'.$autor.'</A></small>'; Výpis chyby : Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /3w/wz.cz/p/pridej/pridat.php on line 13 |
||
Anonym Profil * |
#2 · Zasláno: 6. 2. 2011, 15:24:11
Co je na řádku 12 a 13?
|
||
l564 Profil |
#3 · Zasláno: 6. 2. 2011, 15:27:36
Tak sem dávám celý script
<? $date = date("d M -",time() + $letozima); if (File_Exists("pridane_odkazy.html")): $uloztxt = "\n\n\n"; $fp = FOpen("pridane_odkazy.html","a"); if (!$fp) return; ; else: $fp=FOpen("pridane_odkazy.html","w"); $uloztxt = ""; if (!$fp) return; endif; $ulozfinal ='<A HREF="'.$odkaz.'" TARGET="_blank">'.$titulek.'</A><small><B>Přidal : </B><A HREF="mailto:'.$email.'">'.$autor.'</A></small>'; FPutS($fp,$uloztxt.$ulozfinal); FClose($fp); ?> <?echo"<H4>Údaje byly uložené</H4> zpět na <A HREF="index.html">hlavní stranu</A>";?> |
||
Anonym Profil * |
#4 · Zasláno: 6. 2. 2011, 15:31:16
return - asi by to chtělo nějakou návratovou hodnotu a taky nějakou funkci
co má dělat if (!$fp) return; ? |
||
Tori Profil |
#5 · Zasláno: 6. 2. 2011, 15:43:23
|
||
Anonym Profil * |
#6 · Zasláno: 6. 2. 2011, 15:44:12
Taky u toho posledního echa jsou špatně uvozovky.
Já bych to udělal takto: <?php $hlaska='Údaje byly uložené'; $date = date("d M -",time() + $letozima); $ulozfinal ='<A HREF="'.$odkaz.'" TARGET="_blank">'.$titulek.'</A><small><B>Přidal : </B><A HREF="mailto:'.$email.'">'.$autor.'</A></small>'; if (File_Exists("pridane_odkazy.html")) { $uloztxt = "\n\n\n"; $fp = FOpen("pridane_odkazy.html","a"); if (!$fp) { $fp=FOpen("pridane_odkazy.html","w"); $uloztxt = ""; if (!$fp) $hlaska='Chyba - údaje nebyly uložené'; else { FPutS($fp,$uloztxt.$ulozfinal); FClose($fp); } } } echo'<H4>'.$hlaska.'</H4> zpět na <A HREF="index.html">hlavní stranu</A>'; ?> |
||
Tori Profil |
#7 · Zasláno: 6. 2. 2011, 15:58:08
Anonym:
> return - asi by to chtělo nějakou návratovou hodnotu a taky nějakou funkci > co má dělat if (!$fp) return; Jak víte, že to není výsek z větší funkce? Nasvědčovalo by tomu i to, že dvě podmínky zůstanou otevřené (= váš přepis, byť podobný, má jinou logiku). Nebo to také může být include soubor, který je příkazem return ukončen a pokračuje nadřazený skript. Pokud návrat.hodnota není zadaná (např. proto, že není potřeba), return vrátí null. |
||
Anonym Profil * |
#8 · Zasláno: 6. 2. 2011, 16:00:10
Tori:
Tak sem dávám celý script věštit neumím |
||
l564 Profil |
#9 · Zasláno: 6. 2. 2011, 16:54:52 · Upravil/a: l564
Anonym:
Bylo by krásné kdyby ten tvůj script zapisoval , boužel , ukáže se že to bylo uložené , ale ve výchozím souboru se nic neukáže . Byl bych rád , protože se PHP učím , tak jsem našel tento script který je pro me idealní , tak jesti by bylo možné mi pouze poupravit script a poukázat na chybu |
||
candiess Profil |
#10 · Zasláno: 6. 2. 2011, 17:06:28
l564:
„<?echo"“ 1. mělo by se psát <?php, protože <? podporují jen některé verze PHP a <?php je přehlednější 2. měl bys to mít oddělené --> <?php echo „?echo"<H4>Údaje byly uložené</H4> zpět na <A HREF="index.html">hlavní stranu</A>";?>“ ??? echo "<h4>Údaje byly uložené</h4> zpět na <a href=\"index.html\">hlavni stranu</a>"; |
||
Časová prodleva: 3 roky
|
|||
lacek Profil |
#11 · Zasláno: 2. 5. 2014, 09:27:13
candiess, candiess:
hláška: Parse error: syntax error, unexpected T_STRING in C:\xampp\htdocs\GGASTROSLUZBY\plugins\content\jumi.php(69) : eval()'d code on line 188 zdravíčko, mám obdobný problém potřebuji dostat do skriptu print obrázek script: print "<table cellpadding='2' >"; ....................................................... print "<td>ZELENINOVÝ TALÍŘ<BR> '<img src="images/stories/sluzby/VEG_50.png" alt="Bez masa" />'</td><td>$bunka[140]</td><td>$bunka[142]</td><td>$bunka[144]</td><td>$bunka[146]</td><td>$bunka[148]</td><td></td>"; ...................................... print "</tr></table>"; echo '<img src="images/stories/sluzby/VEG_50.png" alt="Bez masa" />'; >>funguje mimo print ale nějak bych toto potřeboval dostat do viz. výše kde to nefunguje prosím o radu děkuji |
||
juriad Profil |
print "<td>ZELENINOVÝ TALÍŘ<BR> <img src=\"images/stories/sluzby/VEG_50.png\" alt=\"Bez masa\"> </td><td>$bunka[140]</td><td>$bunka[142]</td><td>$bunka[144]</td><td>$bunka[146]</td><td>$bunka[148]</td><td></td>"; |
||
lacek Profil |
tak mi pomohlo odstranění uvozovek a apostrofů:
print "<td>ZELENINOVÝ TALÍŘ<BR> <img src=images/stories/sluzby/VEG_50.png alt=Bez masa /></td><td>$bunka[140]</td><td>$bunka[142]</td><td>$bunka[144]</td><td>$bunka[146]</td><td>$bunka[148]</td><td></td>"; ale toto mi funguje pouze na localu na ostrém webu nepramává, ale už to nevpíše hlášku děkuji juriad: děkuji juriad, vyzkoušel jsem rychleji než jsem se podíval zde na fórum vyzkouším tvojí radu lacek: tak taky nefunguje ale děkuji za reakci tak už teď nevím, že by tam byl nějaký rozdíl mezi localem a webem print "<td>ZELENINOVÝ TALÍŘ<BR> <img src=images/stories/sluzby/VEG_50.png alt=Bez masa /><td>$bunka[140]</td><td>$bunka[142]</td><td>$bunka[144]</td><td>$bunka[146]</td><td>$bunka[148]</td><td></td>"; v buňce se zobrazí > ZELENINOVY TALIR Bez< |
||
Joker Profil |
#14 · Zasláno: 2. 5. 2014, 10:45:13
lacek:
„tak mi pomohlo odstranění uvozovek a apostrofů“ Nedoporučuji z kódu odmazávat věci, u kterých neznáte jejich účel. Kolem HTML atributů za určitých okolností uvozovky být nemusí, ale obecně se nedá říct, že by tam byly jen tak pro legraci. Jinak při vypisování delších HTML kódů v PHP mi přijde nejlepší to teda za prvé nedělat (a mít HTML odděleně), ale když už přece, použít HEREDOC syntaxi: $kod = <<<HTMLKOD <td>ZELENINOVÝ TALÍŘ<BR> '<img src="images/stories/sluzby/VEG_50.png" alt="Bez masa" />'</td><td>$bunka[140]</td><td>$bunka[142]</td><td>$bunka[144]</td><td>$bunka[146]</td><td>$bunka[148]</td><td></td> Nebo si tam můžu dát celkem libovolný kód a nemusím se starat o uvozovky… HTMLKOD; echo $kod; Syntaxe je: Tři menšítka za sebou, pak nějaký zvolený klíč (zde HTMLKOD, nejlepší bude nějaká sekvence písmenek, která se v kódu samotném nevyskytuje), odřádkování. Pak následuje samotný kód a ukončí se samostatným řádkem, na kterém je klíč a středník a nic jiného (ani mezery, tabulátory a podobně, jen odřádkování, klíč, středník, odřádkování). |
||
Chro Profil |
#15 · Zasláno: 2. 5. 2014, 11:00:36
Když už jsem to napsal...
Případně můžeš použít zápis zvaný heredoc a vyhnout se tak eskapování uvozovek nebo spojování řetězců. Hodí se zejména na delší texty a/nebo kódy jako HTML, XML a jiné odvozené aplikace tohoto formátu. Příklad: $a = 'obrazek.jpg'; $ab = 'Petr'; echo <<<EOT <span>Jmenuji se {$ab} a toto je moje fotografie.</span> <img src="{$a}"> EOT; Uvozující řetězce EOT můžeš nahradit jinými, např. BLOKKODU (jen písmena angl. abecedy), tento řetězec se však nesmí vyskytovat dále ve výstupu, až zase na konci. EOT; na konci nesmí být nijak odsazen. |
||
lacek Profil |
#16 · Zasláno: 2. 5. 2014, 12:11:08
Chro:
děkuji, vyzkouším a nebude vadit že do buněk se zapisuje cyklusem? děkuji <?php //správné načtení CSV souboru s českými znaky function getCsv($fh, $len=255, $delim=';', $newline="n") { if (!$fh || feof($fh)) return false; $ret = false; $buffer = ''; $inquote = false; while(!feof($fh)) { $s = chop(fgets($fh, $len)); if ($s != '') for ($i=0; $i<strlen($s); $i++) { switch($char = substr($s,$i,1)) { case '"': if (substr($s,$i+1,1) == '"') { $i++; } else { $inquote = !$inquote; continue 2; } break; case $delim: if (!$inquote) { $ret[] = $buffer; $buffer = ''; continue 2; } break; } $buffer .= $char; } if (!$inquote || feof($fh)) { if (!feof($fh)) $ret[] = $buffer; $buffer = ''; break; } else { $buffer .= $newline; } } return $ret; } //*************** $weekday = Date('w'); /////////////////////////////////// //NOVINKA ve stredu i podle casu $hodinna = Date("H", Time()); ///////////////////////////////////// // get url $instance =& JURI::getInstance(); $url = JURI::getInstance()->toString(); if ((($weekday >= 3) && ($hodinna >= 15)) ||(($weekday >= 4) ||($weekday == 0) ) ) { //*************** print '<p>přejít na : <a href="'.JRoute::_($url).'#next">jídelní lístek pro následující týden</a></p>'; //*************** } else { } //*************** //cteni csv souboru $fh = fopen("CSV/HJ.csv","r") or die('err'); ////////vykonna cast programu while(!feof($fh)) { $x = getcsv($fh,999999,';','n'); if ($x) $bunka=$x; } fclose($fh); $oddata = explode ("-", $bunka[0]); $dodata = explode ("-", $bunka[1]); print "<table cellpadding='2' >"; print "<th colspan='10'>pro týden od $oddata[2].$oddata[1].$oddata[0] do $dodata[2].$dodata[1].$dodata[0]</th><tr class='tableFrame' bgcolor='#c8c8c8'>"; print "<td>DRUH JÍDLA<br>gramáž<br>zvýhodněná</td><td align='center'>PONDĚLÍ</td><td align='center'>ÚTERÝ</td><td align='center'>STŘEDA</td><td align='center'>ČTVRTEK</td><td align='center'>PÁTEK</td><td align='center'>1)SOBOTA<BR>2)NEDĚLE</td>"; print "</tr><tr class='jidel1row'>"; print "<td>POLÉVKY<BR>0,3 l</td><td>$bunka[9]<br><div class='textGreen'>$bunka[10]</div></td><td>$bunka[11]<br><div class='textGreen'>$bunka[12]</div></td><td>$bunka[13]<br><div class='textGreen'>$bunka[14]</div></td><td>$bunka[15]<br><div class='textGreen'>$bunka[16]</div></td><td>$bunka[17]<br><div class='textGreen'>$bunka[18]</div></td><td>$bunka[19]<BR>$bunka[20]</td>"; print "</tr><tr class='jidel2row'>"; print "<td>KLASICKÁ JÍDLA<BR>100 g</td><td>$bunka[21]<br><div class='textBlue'>$bunka[23]</div><br><div class='textPink'>$bunka[25]</div></td><td>$bunka[27]<br><div class='textBlue'>$bunka[29]</div><br><div class='textPink'>$bunka[31]</div></td><td>$bunka[33]<br><div class='textBlue'>$bunka[35]</div><br><div class='textPink'>$bunka[37]</div></td><td>$bunka[39]<br><div class='textBlue'>$bunka[41]</div><br><div class='textPink'>$bunka[43]</div></td><td>$bunka[45]<br><div class='textBlue'>$bunka[47]</div><br><div class='textPink'>$bunka[49]</div></td><td>$bunka[51]<BR>$bunka[52]</td>"; print "</tr><tr class='jidel1row'>"; print "<td>VÝBĚROVÁ JÍDLA<BR>120 g</td><td>$bunka[53]<br><div class='textBlue'>$bunka[55]</div><br><div class='textPink'>$bunka[57]</div></td><td>$bunka[59]<br><div class='textBlue'>$bunka[61]</div><br><div class='textPink'>$bunka[63]</div></td><td>$bunka[65]<br><div class='textBlue'>$bunka[67]</div><br><div class='textPink'>$bunka[69]</div></td><td>$bunka[71]<br><div class='textBlue'>$bunka[73]</div><br><div class='textPink'>$bunka[75]</div></td><td>$bunka[77]<br><div class='textBlue'>$bunka[79]</div><br><div class='textPink'>$bunka[81]</div></td><td>$bunka[83]<BR>$bunka[84]</td>"; print "</tr><tr class='jidel2row'>"; print "<td>SPECIALITY<BR>150 g</td><td>$bunka[85]<br><div class='textBlue'>$bunka[87]</div></td><td>$bunka[89]<br><div class='textBlue'>$bunka[91]</div></td><td>$bunka[93]<br><div class='textBlue'>$bunka[95]</div></td><td>$bunka[97]<br><div class='textBlue'>$bunka[99]</div></td><td>$bunka[101]<br><div class='textBlue'>$bunka[103]</div></td><td></td>"; print "</tr><tr class='jidel1row'>"; print "<td>ŽLUČNÍKOVÁ DIETA<BR>80 g</td><td>$bunka[105]<br><div class='textBlue'>$bunka[106]</div></td><td>$bunka[108]<br><div class='textBlue'>$bunka[109]</div></td><td>$bunka[111]<br><div class='textBlue'>$bunka[112]</div></td><td>$bunka[114]<br><div class='textBlue'>$bunka[115]</div></td><td>$bunka[117]<br><div class='textBlue'>$bunka[118]</div></td><td></td>"; //print "</tr><tr class='jidel2row'>"; //print "<td>DIABETICKÁ DIETA<BR>100 g</td><td>$bunka[69]</td><td>$bunka[70]</td><td>$bunka[71]</td><td>$bunka[72]</td><td>$bunka[73]</td><td></td>"; print "</tr><tr class='jidel2row'>"; print "<td>MOUČNÉ JÍDLO</td><td>$bunka[120]<br><div class='textBlue'>$bunka[122]</div></td><td>$bunka[124]<br><div class='textBlue'>$bunka[126]</div></td><td>$bunka[128]<br><div class='textBlue'>$bunka[130]</div></td><td>$bunka[132]<br><div class='textBlue'>$bunka[134]</div></td><td>$bunka[136]<br><div class='textBlue'>$bunka[138]</div></td><td></td>"; print "</tr><tr class='jidel1row'>"; print "<td>ZELENINOVÝ TALÍŘ</td><td>$bunka[140]</td><td>$bunka[142]</td><td>$bunka[144]</td><td>$bunka[146]</td><td>$bunka[148]</td><td></td>"; print "</tr><tr class='jidel2row'>"; print "<td>SALÁTY</td><td>$bunka[150]<br>$bunka[152]</td><td>$bunka[154]<br>$bunka[156]</td><td>$bunka[158]<br>$bunka[160]</td><td>$bunka[162]<br>$bunka[164]</td><td>$bunka[166]<br>$bunka[168]</td><td></td>"; print "</tr><tr class='jidel1row'>"; print "<td>KLASICKÉ JÍDLO<BR>2. SMĚNA<BR>100 g</td><td>$bunka[170]</td><td>$bunka[171]</td><td>$bunka[172]</td><td>$bunka[173]</td><td>$bunka[174]</td><td></td>"; print "</tr><tr class='jidel2row'>"; print "<td>VÝBĚROVÉ JÍDLO<BR>2. SMĚNA<BR>120 g</td><td>$bunka[175]</td><td>$bunka[176]</td><td>$bunka[177]</td><td>$bunka[178]</td><td>$bunka[179]</td><td></td>"; print "</tr><tr class='textBlackMini'>"; print "<td colspan='7'>Poznámky k jídelnímu lístku: $bunka[180]</td>"; print "</tr><tr class='textBlackMini'>"; print "<td colspan='7'>Vyhotovil: $bunka[182]</td>"; print "</tr><tr class='textBlackMini'>"; print "<td colspan='7'>Datum: $bunka[181]</td>"; print "</tr></table>"; |
||
Joker Profil |
lacek:
Nedává moc smysl volat funkci getcsv cyklem (a už vůbec ne cyklusem), když ta funkce sama čte celý obsah souboru najednou. Pro informaci, PHP už obsahuje funkci, která umí zpracovat CSV data (ta čte naráz jeden řádek, takže tam volání v cyklu smysl má). Krom toho mi tenhle způsob výpisu připadá hrozně nepřehledný. Buď bych ten HTML kód udělal zvlášť, ale jelikož se generují stále stejné buňky, byl bych v pokušení to generovat cyklem. Ještě poznámka, CSS třídy je lepší pojmenovávat logickým významem toho na co se používají, ne jejich vzhledem. Pak po čase změníte vzhled a může se stát, že třída textGreen bude modrá, textBlue červená a tak dále. |
||
lacek Profil |
#18 · Zasláno: 2. 5. 2014, 13:39:29
Joker děkuji,
už mi to funguje pomocí HEREDOC syntaxe palec hore |
||
Časová prodleva: 10 let
|
0