NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: xml to mysql to xml

V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Hugo Matoušek:6.12.2015 19:58

Ahoj. Mám xml soubor, některé položky jsem z něj chtěl dostat, takže jsem ho převedl do mysql a nyní potřebuji nějaký jednoduchý přepínač, kterým zvolím, které položky se budou vyskytovat v novém xml soubory. Bohužel mi však nefunguje přepínač. Momentálně to řeším tím, že mám jeden řádek navíc - use a tím přepínám 0/1. Aktivováno/ne­kativováno se zobrazuje korektně, ale nijak to neraguje na změny, které udělám. do change.php i podle mého testování totiž nejdou žádná data.

Vím, že to moc nedává smysl. Od rána na tom pracuji a předtím jsem viděl php jednou v životě, takže mi ztoho jde už hlava kolem
index.php

<!DOCTYPE html>
<html lang="cs" dir="ltr">

  <head>
    <meta charset="UTF-8"/>
    <title>XML feed</title>
  </head>
<body>
<?php
$db = new PDO("mysql:host=wm100.wedos.net;dbname=d38383_xml", "a38383_xml", "69sgvw9x");
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
try {
  $dotazText = "SELECT * FROM xml";
  $dotaz = $db->prepare($dotazText);
  $dotaz->execute();
  echo '<form action="change.php" method="post">';
  echo '<table>';
 foreach($dotaz as $radek) {
    echo'<tr><td>';
    echo $radek['ITEM_ID'] . ' </td> <td> ' . $radek['PRODUCTNAME'] . ' </td> <td> ' . $radek['PRICE_VAT']. ' </td> <td> ';
    $a = $radek['ITEM_ID'];

    if ($radek['use'] == 1)     echo'
      <input type="radio" name="form[]" value="1" checked>Aktivní

  <input type="radio" name="form[]" value="0">Neaktivní ';
    else     echo'
      <input type="radio" name="form[]" value="1">Aktivní

  <input type="radio" name="form[]" value="0" checked>Neaktivní ';

    echo'</tr></td>';

  }
  echo '</table>';
  echo '<input type="submit" value="Změnit">';
  $dotaz->closeCursor();
} catch (PDOException $e) {
  echo $e->getMessage();
}

?>
</body>
</html>

change.php

<?php
        $change = $_POST['form'];
  if(empty($change))
  {
    echo "test";
  }
  else
  {
    $N = count($change);


    for($i=0; $i < $N; $i++)
    {

      echo $change[$i];
    $db = new PDO("mysql:host=wm100.wedos.net;dbname=d38383_xml", "a38383_xml", "69sgvw9x");
                $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
                $dotazText = "INSERT INTO xml(use)
                                                VALUES ('$change[$i]')";
                try {
                $db->query($dotazText);
                } catch (PDOException $e) {
                echo $e->getMessage();
                }
    }
  }
  index.php;

?>
 
Odpovědět
6.12.2015 19:58
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.