Autor Zpráva
Honzik84
Profil *
<?php
$spojenie = mysql_connect('XXX', 'XXX', 'XXX'); 
if (!$spojenie) { 
    die('Nemůžu sa připojit na databazi: ' .mysql_error()); 
} 
mysql_query('set names utf8'); 
mysql_query('SET COLLATION_CONNECTION=utf8');

$vybratie = MySQL_Select_Db("XXX"); 
if (!$vybratie) { 
  die('Nemůžu sa připojit na databazi: ' .mysql_error()); 
}


$order = "INSERT INTO Poruchy (Jmeno, Porucha) VALUES ( '" . mysql_real_escape_string($_POST['Jmeno']) . "', '" . mysql_real_escape_string($_POST['Porucha']) . "')";
$result = mysql_query($order);  //order executes 
if($result){ 
echo("<br>Akce byla úspěšně nahrána"); 
} else{ 
echo('Nebylo nahráno ' .mysql_error()); 

} 


?>

Ahoj, mám tam někde chybu, můžete mi na to prosím kouknout? Nejsem schopný s tím hnout
Parse error: syntax error, unexpected '"' in /data/web/virtuals/16062/virtual/www/subdom/barak/porucha-odeslat.php on line 21
mimochodec
Profil
Co v tom kódu je řádek 21?
Fisir
Profil
Reaguji na Honzika84:
Dáváš sem celý kód? V tom, co jsi poslal žádná syntaktická chyba není.
jefitto44
Profil
Presne, už to tam hľadám 10 minút, ale žiadnu syntax error tam nevidím... nedal si tu náhodou iný súbor?
Honzik84
Profil *
Nemůže být chyba v tom ,že do databáze chci vložit jen 2 prvky a v DB jich je 5?
Popřípadě, jak sem nacpat automatický datum?, další je ID (autiinkrement) a poslední je řešení, kde ke je dána staticky 0


Ano, dávám sem celý kód souboru odesílacího
Marschmallow
Profil
Taky v to nějakou dobu hledám a nic špatně nevidím...

Honzik84:
Vlož sem celý soubor porucha-odeslat.php, ve kterém je ten skript. Nebo nám alespoň pověz, co je na řádku č. 21 v tom souboru...
lionel messi
Profil
Honzik84:
Nemůže být chyba v tom ,že do databáze chci vložit jen 2 prvky a v DB jich je 5?
Pri tomto SQL dotaze nie, ty totiž tie stĺpce vymenúvaš, takže omyl je vylúčený.

Popřípadě, jak sem nacpat automatický datum?
Konštanta CURRENT_DATE (ak sa bavíme o SQL dotaze).
Honzik84
Profil *
Omlouvám se, jsem karkulka, chyba byla ve velikosti písmen:)


Jak to teda bude vypadat s Tím current date
lionel messi
Profil
Honzik84:
Jak to teda bude vypadat s Tím current date
Kam presne potrebuješ dátum vložiť?
Honzik84
Profil *
$order = "INSERT INTO Poruchy (Jmeno, Porucha) VALUES ( '" . mysql_real_escape_string($_POST['Jmeno']) . "', '" . mysql_real_escape_string($_POST['Porucha']) . "')";
lionel messi
Profil
Honzik84:
Áno, tento dotaz už poznám, ale do ktorého stĺpca chceš prosím vložiť aktuálny dátum? Podľa logiky to Jmeno ani Porucha nebude. Ale všeobecne (ak to chceš do ďalšieho stĺpca):

$order = "INSERT INTO Poruchy (Jmeno, Porucha, Datum) VALUES ( '" . mysql_real_escape_string($_POST['Jmeno']) . "', '" . mysql_real_escape_string($_POST['Porucha']) . "', CURRENT_DATE)";

Datum nahraď názvom svojho stĺpca.
Honzik84
Profil *
A ještě prosím o úpravu tohoto kodu, kdy potřebuju, aby v prvku s ID číslem xxx Sloupec Hotovo získal hodnotu 1

$query = 'Update FROM Poruchy SET `Hotovo` = '1' WHERE id = '. $_GET['akce'] ;


A ještě jestli mohu jeden dotaz k tomuhle kodu, vložení mi funguje, smazání taky, a jak udělám, aby, když kliknu na odkaz, který mám u poruchy?

Musí to být nějak podobně


$query = 'Update FROM Poruchy SET `Hotovo` = '1' WHERE id = '. $_GET['akce'] ;

A ještě prosím o úpravu tohoto kodu, kdy potřebuju, aby v prvku s ID číslem xxx Sloupec Hotovo získal hodnotu 1
lionel messi
Profil
$query = 'Update `Poruchy` SET `Hotovo` = 1 WHERE id = '. mysql_real_escape_string($_GET['akce']);
Pri update sa nepíše FROM.

Honzik84:
a jak udělám, aby, když kliknu na odkaz, který mám u poruchy?
Čo sa má stať keď na odkaz klikneš? Vôbec ti nerozumiem.
Honzik84
Profil *
V té tabulce je seznam poruch, a to co ještě nebylo vyřešeno, tak má hodnotu 0, a správce, když opraví poruchu, taky klikne na odkaz Opraveno a Hotovo se změní na hodnotu 1


<?php
$spojenie = mysql_connect(''); 
if (!$spojenie) { 
    die('Nemůžu sa připojit na databazi: ' .mysql_error()); 
} 
mysql_query('set names utf8'); 
mysql_query('SET COLLATION_CONNECTION=utf8');
  
$vybratie = MySQL_Select_Db(""); 
if (!$vybratie) { 
  die('Nemůžu sa připojit na databazi: ' .mysql_error()); 
}


 $query = 'Update `Poruchy` SET `Hotovo` = '1' WHERE id = '. mysql_real_escape_string($_GET['akce']);
 

mysql_query($query);

?>


    <h1>
      Nahlášené poruchy:
</h1>
   
<?php
$srchQ = "SELECT * FROM Poruchy ORDER BY Datum DESC";
$srch = MySQL_Query($srchQ);
$rows = MySQL_Num_Rows($srch);
if ($rows !== 0):
?>
 
 
 
 
 
<table width="900px" border="1xp solid black;">
<?php
    for ($i=0;$i<$rows;$i++):
        $zaznam = MySQL_Fetch_Assoc($srch);
        if ($zaznam[Hotovo]==1) {
                          $zaznam[Hotovo]=Vyřešeno;
               }
               else {
                       $zaznam[Hotovo]=Čeká;
               }
?>
<tr><td><?php echo $zaznam['Jmeno'] ?></td><td><?php echo $zaznam['Porucha'] ?></td><td style="width: 100px;"><?php echo $zaznam[Datum]?></a></td><td style="width: 40px;"><?php echo $zaznam[Hotovo]?></a></td><td><a href="porucha-opraveno.php?akce=<?php echo $zaznam[Id] ?>">Vyřešeno</a></td><td><a href="porucha-smaz.php?akce=<?php echo $zaznam[Id] ?>">Smaž</a></td></tr>             
<?php endfor; ?>
</table>  
       <br><br>
<?php endif; ?>
  <h1>
      Nahlášení poruchy:
</h1>



<form method="post" enctype="multipart/form-data" action="porucha-odeslat.php">


 <p>
 Jméno:  <input type="text" name="Jmeno" size="30"class="formik" /> 
 
 </p> 
 
 <p>
 Porucha: <textarea name="Porucha" rows="4" cols="100"></textarea>
 
 </p>





     <input type="submit" name="odeslat" value="Odeslat" class="buttonek" />



Na 15 řádku to ted hází chybu
lionel messi
Profil
<a href="?akce=0">Označiť ako vyriešené</a>


Niekde na tej stránke s odkazom bude podmienka:
if (isset($_GET["akce"]) && $_GET["akce"] == 0)
{
  $query = 'Update `Poruchy` SET `Hotovo` = 1 WHERE `id` = '. mysql_real_escape_string($_GET['akce']);

}



Honzik84:
Na 15 řádku to ted hází chybu
Vyhoď apostrofy okolo jednotky v dotaze, nemá ich zmysel escapovať.
Honzik84
Profil *
Premává, velice děkuji za pomoc

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: