Autor Zpráva
Zodiak
Profil
Zdravim,

Jde o zapeklitou chybu v scriptu ktery uklada hodnoty do mysql.

Parse error: syntax error, unexpected $end in /data/xx/html/zakazky/add.php on line 27

Soubor proste beze zmeny prestal fungovat a hlasit tuhle chybu. Nepomohlo ani nahrani zalohy, stoprocente funkcni, ani vytvoreni noveho souboru.

<?php
@require_once('requires.php');
session_start();
    ob_start();
make_html(Zakazka,bo);
if (IsSet ($_SESSION['logged']))
  {
    mysql_con();
switch ($_GET['action']) {

case "edit":
if (!$_POST['servis_oprava'] == "Ano")
   {
   $servis_oprava = "Ne";
   }
   else $servis_oprava = "Ano";
if ($_POST['date_den2'] == "--"){
  $stav = "Aktivní";
  }
  if ($_POST['stav'] == "Aktivní") {
$date_rok2 = "----";
$date_mesic2 = "--";
$date_den2 = "--";
}
else {
$date_rok2 = date(Y);
$date_mesic2 = date(m);
$date_den2 = date(d);
}
$SQLText = "UPDATE zakazky SET typ_ID='{$_POST['typ_ID']}', Nazev='{$_POST['nazev']}', Stav='{$_POST['stav']}', kdo='{$_POST['zadavajici']}', popis='{$_POST['popis']}', fakturace='{$_POST['faktr']}', datum_za='{$_POST['date_rok']}{$_POST['date_mesic']}{$_POST['date_den']}', datum_uz='$date_rok2$date_mesic2$date_den2', druh='{$_POST['druh']}', zodpovidajici='{$_POST['zodpovidajici']}', poznamka='{$_POST['poznamka']}', termin='{$_POST['date_rok3']}{$_POST['date_mesic3']}{$_POST['date_den3']}', platnost_zaruky='{$_POST['date_rok4']}{$_POST['date_mesic4']}{$_POST['date_den4']}', kontakt='{$_POST['kontakt']}', zvlastni='{$_POST['zvlastni']}', old_id='{$_POST['old_id']}', servis_oprava='$servis_oprava', uz_id='{$_POST['uz_id']}' WHERE zakazka_ID='{$_POST['id']}'";
mysql_query($SQLText);
 header("location: index2.php?volba=upraveno");
   break;
  case "add":
    for ($i=1; $i<=$_POST['hid2']; $i++)
{
$SQLText = "INSERT INTO faktury (zakazka_ID, Cislo) VALUES ('{$_POST['hid']}', '{$_POST['cislo'.$i]}')";
mysql_query($SQLText);
}
$SQLText2 = "UPDATE zakazky SET fakturace='ano' WHERE zakazka_ID='{$_POST['hid']}'";

mysql_query($SQLText2);
header("location: index2.php?volba=faktr");
  break;
  case "nova":
if ($_POST['servis_oprava'] != "Ano")
  {
  $servis_oprava = "Ne";
  }
  else $servis_oprava = "Ano";
if ($_POST['date_mesic2'] == "--"){
  $_POST['stav'] = "Aktivní";
  }
if ($_POST['stav'] == "Aktivní")
{
$date_rok2 = "----";
$date_mesic2 = "--";
$date_den2 = "--";
}
else {
$date_rok2 = date(Y);
$date_mesic2 = date(m);
$date_den2 = date(d);
}
$SQLText="INSERT INTO zakazky (typ_ID, Nazev, stav, kdo, popis, fakturace, datum_za, datum_uz, druh, zodpovidajici, termin, kontakt, old_id, servis_oprava, zvlastni, platnost_zaruky, uz_id) VALUES ('{$_POST['typ_ID']}','{$_POST['nazev']}','{$_POST['stav']}','{$_POST['zadavajici']}','{$_POST['popis']}','{$_POST['faktr']}','{$_POST['date_rok']}{$_POST['date_mesic']}{$_POST['date_den']}','$date_rok2$date_mesic2$date_den2','{$_POST['druh']}','{$_POST['zodpovidajici']}','{$_POST['date_rok3']}{$_POST['date_mesic3']}{$_POST['date_den3']}','{$_POST['kontakt']}','{$_POST['old_id']}','$servis_oprava','{$_POST['zvlastni']}','{$_POST['date_rok4']}{$_POST['date_mesic4']}{$_POST['date_den4']}','{$_POST['uz_id']}')";
mysql_query($SQLText);
header("location: index2.php?volba=pridano");
   break;
     case "vzkazadd":
  $SQLText = "INSERT INTO vzkazy (id_uz, text, datum, cas) VALUES ('{$_POST['id_uz']}', '{$_POST['text']}', '{$_POST['date_rok']}{$_POST['date_mesic']}{$_POST['date_den']}', '{$_POST['cas']}')";
mysql_query($SQLText);
header("location: index2.php?volba=vzkazy");
  break;
  case "vzkazdel":
  $SQLText3 = "DELETE FROM vzkazy WHERE id='{$_POST['id']}'";
mysql_query($SQLText3);
header("location: index2.php?volba=vzkazy");
  break;
  case "adminadd":
  $heslo = md5((sha1($_POST['jmeno'].md5($_POST['heslo']))));
  $SQLText = "INSERT INTO uzivatele (jmeno, heslo, typ, prijmeni) VALUES ('{$_POST['jmeno2']}', '$heslo', '{$_POST['typ']}', '{$_POST['prijmeni2']}')";
mysql_query($SQLText);
header("location: index2.php?volba=admin");
  break;
  case "adminedit":
  $heslo = md5((sha1($_POST['jmeno'].md5($_POST['heslo']))));
  $SQLText2 = "UPDATE uzivatele SET jmeno='{$_POST['jmeno']}', heslo='{$heslo}', typ='{$_POST['typ']}', prijmeni='{$_POST['prijmeni']}' WHERE id='{$_POST['id']}'";
mysql_query($SQLText2);
header("location: index2.php?volba=admin");
  break;
}
}
else
  {
   header("location: index.php");
  };
end_html();
?>



Script je rozdeleny switchem, na nej odkazuji formulare... Uvodni podminka je pro overeni loginu (chyba je i kdyz uzivatel lognuty neni...).
Mam to ted roztrhane do 4 souboru, jde o to ze se nektere CASE proste nesnesou. Kdyz mam v scriptu case nova a case edit, script nefunguje, ale kdyz jen jeden z nich, funguje. A takove kombinace sou i v ostatnich CASEch...
Este k chybove hlasce... To cislo je tam spis tak pro srandu... Dal sem na tu pozici komentar a on v nem nasel chybu....



Prosim nema nekdo nejaky napad? Uz si nad tim lamu hlavu snad 10 hodin v kuse...
Alphard
Profil
syntax error, unexpected $end in /data/xx/html/zakazky/add.php on line 27
který soubor jste sem zkopíroval? tato chyba většinou značí neuzavřenou závorku, chybějící ?> endif; apod.
bývá hlášena na posledním řádku souboru
Cargas
Profil
16 radek : else { $servis_oprava = "Ano";

a session_start(); vzdy hazej uplne na zacatek
Zodiak
Profil
16 radek : else { $servis_oprava = "Ano";
a session_start(); vzdy hazej uplne na zacatek

Udelano a vyreseno... Jednoduse wow...

Ale jsem trochu na pochybach... Proc zacatek te zavorky? A jen zacatek te zavorky? PSpad mi ukazuje konec te zavorky az uplne na konci souboru. Nedela to ted ze zbytku scriptu else cast podminky?

Jakypak tam ma vyznam ta zavorka? Zvlast kdyz nekonci?

Alphard: je to prave add.php, vsechny zavorky sem kontroloval jak nejlepe sem mohl, ale na nic sem neprisel...

Diky moc za rychlou reakci...

EDIT: Prozkouseno, script se neprovede. Zustane ale bez chyby... Pokud dam za 16 konec te zavorky, tak je chyba...
Cargas
Profil
musis ho ale jeste dokoncit , nemuzes udelat jen jedno { ale musis to zavrit , ja neznam script tak nevim kam az ma sahat
Zodiak
Profil
<?php
session_start();
    ob_start();
@require_once('requires.php');
make_html(Zakazka,bo);
if (IsSet ($_SESSION['logged']))
  {
    mysql_con();
switch ($_GET['action']) {

case "edit":
if (!$_POST['servis_oprava'] == "Ano")
   {
   $servis_oprava = "Ne";
   }
   else
   {
   $servis_oprava = "Ano";
   }
if ($_POST['date_den2'] == "--"){
  $stav = "Aktivní";
  }
  if ($_POST['stav'] == "Aktivní") {
$date_rok2 = "----";
$date_mesic2 = "--";
$date_den2 = "--";
}
else {
$date_rok2 = date(Y);
$date_mesic2 = date(m);
$date_den2 = date(d);
}
$SQLText = "UPDATE zakazky SET typ_ID='{$_POST['typ_ID']}', Nazev='{$_POST['nazev']}', Stav='{$_POST['stav']}', kdo='{$_POST['zadavajici']}', popis='{$_POST['popis']}', fakturace='{$_POST['faktr']}', datum_za='{$_POST['date_rok']}{$_POST['date_mesic']}{$_POST['date_den']}', datum_uz='$date_rok2$date_mesic2$date_den2', druh='{$_POST['druh']}', zodpovidajici='{$_POST['zodpovidajici']}', poznamka='{$_POST['poznamka']}', termin='{$_POST['date_rok3']}{$_POST['date_mesic3']}{$_POST['date_den3']}', platnost_zaruky='{$_POST['date_rok4']}{$_POST['date_mesic4']}{$_POST['date_den4']}', kontakt='{$_POST['kontakt']}', zvlastni='{$_POST['zvlastni']}', old_id='{$_POST['old_id']}', servis_oprava='$servis_oprava', uz_id='{$_POST['uz_id']}' WHERE zakazka_ID='{$_POST['id']}'";
mysql_query($SQLText);
 header("location: index2.php?volba=upraveno");
   break;
  case "add":
    for ($i=1; $i<=$_POST['hid2']; $i++)
{
$SQLText = "INSERT INTO faktury (zakazka_ID, Cislo) VALUES ('{$_POST['hid']}', '{$_POST['cislo'.$i]}')";
mysql_query($SQLText);
}
$SQLText2 = "UPDATE zakazky SET fakturace='ano' WHERE zakazka_ID='{$_POST['hid']}'";

mysql_query($SQLText2);
header("location: index2.php?volba=faktr");
  break;
  case "nova":
if ($_POST['servis_oprava'] != "Ano")
  {
  $servis_oprava = "Ne";
  }
   else
   {
   $servis_oprava = "Ano";
   }
if ($_POST['date_mesic2'] == "--"){
  $_POST['stav'] = "Aktivní";
  }
if ($_POST['stav'] == "Aktivní")
{
$date_rok2 = "----";
$date_mesic2 = "--";
$date_den2 = "--";
}
else {
$date_rok2 = date(Y);
$date_mesic2 = date(m);
$date_den2 = date(d);
}
$SQLText="INSERT INTO zakazky (typ_ID, Nazev, stav, kdo, popis, fakturace, datum_za, datum_uz, druh, zodpovidajici, termin, kontakt, old_id, servis_oprava, zvlastni, platnost_zaruky, uz_id) VALUES ('{$_POST['typ_ID']}','{$_POST['nazev']}','{$_POST['stav']}','{$_POST['zadavajici']}','{$_POST['popis']}','{$_POST['faktr']}','{$_POST['date_rok']}{$_POST['date_mesic']}{$_POST['date_den']}','$date_rok2$date_mesic2$date_den2','{$_POST['druh']}','{$_POST['zodpovidajici']}','{$_POST['date_rok3']}{$_POST['date_mesic3']}{$_POST['date_den3']}','{$_POST['kontakt']}','{$_POST['old_id']}','$servis_oprava','{$_POST['zvlastni']}','{$_POST['date_rok4']}{$_POST['date_mesic4']}{$_POST['date_den4']}','{$_POST['uz_id']}')";
mysql_query($SQLText);
header("location: index2.php?volba=pridano");
   break;
     case "vzkazadd":
  $SQLText = "INSERT INTO vzkazy (id_uz, text, datum, cas) VALUES ('{$_POST['id_uz']}', '{$_POST['text']}', '{$_POST['date_rok']}{$_POST['date_mesic']}{$_POST['date_den']}', '{$_POST['cas']}')";
mysql_query($SQLText);
header("location: index2.php?volba=vzkazy");
  break;
  case "vzkazdel":
  $SQLText3 = "DELETE FROM vzkazy WHERE id='{$_POST['id']}'";
mysql_query($SQLText3);
header("location: index2.php?volba=vzkazy");
  break;
  case "adminadd":
  $heslo = md5((sha1($_POST['jmeno'].md5($_POST['heslo']))));
  $SQLText = "INSERT INTO uzivatele (jmeno, heslo, typ, prijmeni) VALUES ('{$_POST['jmeno2']}', '$heslo', '{$_POST['typ']}', '{$_POST['prijmeni2']}')";
mysql_query($SQLText);
header("location: index2.php?volba=admin");
  break;
  case "adminedit":
  $heslo = md5((sha1($_POST['jmeno'].md5($_POST['heslo']))));
  $SQLText2 = "UPDATE uzivatele SET jmeno='{$_POST['jmeno']}', heslo='{$heslo}', typ='{$_POST['typ']}', prijmeni='{$_POST['prijmeni']}' WHERE id='{$_POST['id']}'";
mysql_query($SQLText2);
header("location: index2.php?volba=admin");
  break;
}
}
else
  {
   header("location: index.php");
  }
end_html();
?>


Takhle to vypada ted. Stejna chyba...


Parse error: syntax error, unexpected $end in /data/xx/html/zakazky/add.php on line 29
Zodiak
Profil
zkousel sem trochu osekat a prepsat do podminek elseif...

<?php
@require_once('requires.php');
    mysql_con();

if ($_GET['action'] == "edit"){
if (!$_POST['servis_oprava'] == "Ano")
   {
   $servis_oprava = "Ne";
   }
   else
   {
   $servis_oprava = "Ano";
   };
if ($_POST['date_den2'] == "--"){
  $stav = "Aktivní";
  };
  if ($_POST['stav'] == "Aktivní"){
$date_rok2 = "----";
$date_mesic2 = "--";
$date_den2 = "--";
}
else {
$date_rok2 = date(Y);
$date_mesic2 = date(m);
$date_den2 = date(d);
};
$SQLText = "UPDATE zakazky SET typ_ID='{$_POST['typ_ID']}', Nazev='{$_POST['nazev']}', Stav='{$_POST['stav']}', kdo='{$_POST['zadavajici']}', popis='{$_POST['popis']}', fakturace='{$_POST['faktr']}', datum_za='{$_POST['date_rok']}{$_POST['date_mesic']}{$_POST['date_den']}', datum_uz='$date_rok2$date_mesic2$date_den2', druh='{$_POST['druh']}', zodpovidajici='{$_POST['zodpovidajici']}', poznamka='{$_POST['poznamka']}', termin='{$_POST['date_rok3']}{$_POST['date_mesic3']}{$_POST['date_den3']}', platnost_zaruky='{$_POST['date_rok4']}{$_POST['date_mesic4']}{$_POST['date_den4']}', kontakt='{$_POST['kontakt']}', zvlastni='{$_POST['zvlastni']}', old_id='{$_POST['old_id']}', servis_oprava='$servis_oprava', uz_id='{$_POST['uz_id']}' WHERE zakazka_ID='{$_POST['id']}'";
mysql_query($SQLText);
 header("location: index2.php?volba=upraveno");
}
elseif ($_GET['action'] == "add"){
    for ($i=1; $i<=$_POST['hid2']; $i++)
{
$SQLText = "INSERT INTO faktury (zakazka_ID, Cislo) VALUES ('{$_POST['hid']}', '{$_POST['cislo'.$i]}')";
mysql_query($SQLText);
};
$SQLText2 = "UPDATE zakazky SET fakturace='ano' WHERE zakazka_ID='{$_POST['hid']}'";
mysql_query($SQLText2);
header("location: index2.php?volba=faktr");
}
elseif ($_GET['action'] == "nova"){
if ($_POST['servis_oprava'] != "Ano")
  {
  $servis_oprava = "Ne";
  }
   else
   {
   $servis_oprava = "Ano";
   };
if ($_POST['date_mesic2'] == "--"){
  $_POST['stav'] = "Aktivní";
  };
if ($_POST['stav'] == "Aktivní")
{
$date_rok2 = "----";
$date_mesic2 = "--";
$date_den2 = "--";
}
else {
$date_rok2 = date(Y);
$date_mesic2 = date(m);
$date_den2 = date(d);
};
$SQLText="INSERT INTO zakazky (typ_ID, Nazev, stav, kdo, popis, fakturace, datum_za, datum_uz, druh, zodpovidajici, termin, kontakt, old_id, servis_oprava, zvlastni, platnost_zaruky, uz_id) VALUES ('{$_POST['typ_ID']}','{$_POST['nazev']}','{$_POST['stav']}','{$_POST['zadavajici']}','{$_POST['popis']}','{$_POST['faktr']}','{$_POST['date_rok']}{$_POST['date_mesic']}{$_POST['date_den']}','$date_rok2$date_mesic2$date_den2','{$_POST['druh']}','{$_POST['zodpovidajici']}','{$_POST['date_rok3']}{$_POST['date_mesic3']}{$_POST['date_den3']}','{$_POST['kontakt']}','{$_POST['old_id']}','$servis_oprava','{$_POST['zvlastni']}','{$_POST['date_rok4']}{$_POST['date_mesic4']}{$_POST['date_den4']}','{$_POST['uz_id']}')";
mysql_query($SQLText);
header("location: index2.php?volba=pridano");
}
elseif ($_GET['action'] == "vzkazadd"){
  $SQLText = "INSERT INTO vzkazy (id_uz, text, datum, cas) VALUES ('{$_POST['id_uz']}', '{$_POST['text']}', '{$_POST['date_rok']}{$_POST['date_mesic']}{$_POST['date_den']}', '{$_POST['cas']}')";
mysql_query($SQLText);
header("location: index2.php?volba=vzkazy");
}
elseif ($_GET['action'] == "vzkazdel"){
  $SQLText3 = "DELETE FROM vzkazy WHERE id='{$_POST['id']}'";
mysql_query($SQLText3);
header("location: index2.php?volba=vzkazy");
}
elseif ($_GET['action'] == "adminadd"){
  $heslo = md5((sha1($_POST['jmeno'].md5($_POST['heslo']))));
  $SQLText = "INSERT INTO uzivatele (jmeno, heslo, typ, prijmeni) VALUES ('{$_POST['jmeno2']}', '$heslo', '{$_POST['typ']}', '{$_POST['prijmeni2']}')";
mysql_query($SQLText);
header("location: index2.php?volba=admin");
}
elseif ($_GET['action'] == "adminedit") {
  $heslo = md5((sha1($_POST['jmeno'].md5($_POST['heslo']))));
  $SQLText2 = "UPDATE uzivatele SET jmeno='{$_POST['jmeno']}', heslo='{$heslo}', typ='{$_POST['typ']}', prijmeni='{$_POST['prijmeni']}' WHERE id='{$_POST['id']}'";
mysql_query($SQLText2);
header("location: index2.php?volba=admin");
};
?>


Chyba:
{
Parse error: syntax error, unexpected $end in /data/xx/html/zakazky/add5.php on line 27
AM_
Profil
V jakym programu to pises? porid si neco, co zvyraznuje syntaxe a souvisejici zavorky, treba PSPad, PHPEd...
A nauc se odsazovat spravne bloky, v odsazovani mas naprosty hokej, a to presne vede k tomu, ze se v blokove strukture ztratis.
Zodiak
Profil
Nejsem zadny expert, ale zacatecnik. Pisu v PSpadu nebo v Contextu, vola zase ze me nedelej.
Zodiak
Profil
Nejaky napad neni? Uz to proslo dost lidi a nikdo nic...
AM_
Profil
vola zase ze me nedelej
Njn kdyz si tak vlidnej tak to se pak radi jedna radost :) podivej se na ten radek na kterym ti to hlasi chybu.. nezda se ti trochu dlouhej?
Zodiak
Profil
ne, nevlidnej nechcu byt :)... je dlouhej, spousta dat... Upozornuju ze samostatne to funguje (bez ostatnich casti switche)...
gogy27
Profil
preco mas v predposlednom riadku }; ? nestaci iba } toto?
Zodiak
Profil
preco mas v predposlednom riadku }; ? nestaci iba } toto?
je to kvuli prehlednosti, ze tam konci serie elseifu... ale staci tam i zavorka, zvlast kdyz je tam konec scriptu...

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:

0