| Autor | Zpráva | ||
|---|---|---|---|
| lolkohrad Profil * |
#1 · Zasláno: 28. 4. 2014, 01:50:01
ahoj, nedari se mi pres POST odeslat a ulozit data do xml souboru,
kdyz to neposilam pres POST, tak to normalne funguje, ale pres formular to nemohu rozjet. Pomuze nekdo? Kod: <?php
$doc = new DOMDocument();
$doc->load('aaa.xml');
$newitem = $doc->createElement('PRODUCTS');
$doc->appendChild($newitem);
function pridej($jmeno, $cena, $popis){
$item = $GLOBALS['doc']->createElement('ITEM', '');
$GLOBALS['newitem']->appendChild($item);
$name = $GLOBALS['doc']->createElement('NAME', $jmeno);
$item->appendChild($name);
$price = $GLOBALS['doc']->createElement('PRICE', $cena);
$item->appendChild($price);
$description = $GLOBALS['doc']->createElement('DESCRIPTION', $popis);
$item->appendChild($description);
if ($_POST){
$jmeno = $_POST['jmeno'];
$cena = $_POST['cena'];
$popis = $_POST['popis'];
pridej($jmeno, $cena, $popis);
print 'zapsano'.$doc->save('aaa.xml').' bytes of data';
}
}
?>
Vlozit produkt<br />
<form method="post">
Jmeno<br />
<input type="text" name="jmeno" /><br />
Cena<br />
<input type="text" name="cena" /><br />
Popis<br />
<input type="text" name="popis" /><br />
<input type="submit" value="Vlozit" />
</form> |
||
| Chro Profil |
#2 · Zasláno: 28. 4. 2014, 03:09:34
if ($_POST){... je obsaženo v definici funkce pridej, taktéž volání funkce pridej je v definici funkce pridej, musí to být mimo definici funkce pridej vyhrazené složenýma závorkama. Takže tu jednu } na konci skriptu dej před if ($_POST).
|
||
| lolkohrad Profil * |
#3 · Zasláno: 28. 4. 2014, 09:20:04
moc diky :D...psal jsem to rano ve 2 a tak uz jsem si nevsiml zavorek...tu chybu bych sam tezko hledal :D...diky moc
|
||
| lolkohrad Profil * |
#4 · Zasláno: 28. 4. 2014, 19:44:00
ahoj, mam ted problem s pridavanim produktu do XML soboru,
uspesne ho nahraji a vypisu do prohlizece, ale jen maximalne 2 polozky, pak se ty ostatni prepisou. co delam spatne? Potreboval bych, aby se s kazdym odeslanim pridala polozka na konec seznamu. diky function pridej($jmeno, $cena, $popis){
$item = $GLOBALS['doc']->createElement('ITEM', '');
$GLOBALS['doc']->appendChild($item);
//$id = $GLOBALS['doc']->createElement('ID', $id);
//$item->appendChild($id);
$name = $GLOBALS['doc']->createElement('NAME', $jmeno);
$item->appendChild($name);
$price = $GLOBALS['doc']->createElement('PRICE', $cena);
$item->appendChild($price);
$description = $GLOBALS['doc']->createElement('DESCRIPTION', $popis);
$item->appendChild($description);
}
//delete(NAME);
//nacteni XML
$doc = new DOMDocument();
$doc->load('aaa.xml');
if ($_POST){
$jmeno = $_POST['jmeno'];
$cena = $_POST['cena'];
$popis = $_POST['popis'];
pridej($jmeno, $cena, $popis);
$doc->save('aaa.xml');
echo "uspesne pridano";
}
$books = $doc->getElementsByTagName( "ITEM" );
foreach( $books as $book )
{
//$ids = $book->getElementsByTagName( "ID" );
//$id = $ids->item(0)->nodeValue;
$prices = $book->getElementsByTagName( "PRICE" );
$price = $prices->item(0)->nodeValue;
$names = $book->getElementsByTagName( "NAME" );
$name = $names->item(0)->nodeValue;
$publishers = $book->getElementsByTagName( "DESCRIPTION" );
$publisher = $publishers->item(0)->nodeValue;
echo "<br>$name - $price - $publisher<br>";
}
?>
Vlozit produkt<br />
<form method="post">
Jmeno<br />
<input type="text" name="jmeno" /><br />
Cena<br />
<input type="text" name="cena" /><br />
Popis<br />
<input type="text" name="popis" /><br />
<input type="submit" value="Vlozit" />
</form> |
||
|
Časová prodleva: 11 let
|
|||
0