Jump to content
php.lv forumi

Citiem viegli.. citiem nee..


SadDemon

Recommended Posts

Vai priekš php 4 versijas būs pareizi? -

 

<?php

$id = $_POST['id'];

$doc = new DOMDocument;
$doc -> load('depot.xml');

$el = $doc -> get_elements_by_tag_name('product');
foreach($el as $element) {
if($element -> get_attribute('id') == $id) {
	$element -> parent_node -> remove_child($element);
	break;
}
}

$doc -> save("depot.xml");

?>

 

Neesmu necik zinošs iekš php, tāpēc lūdzu pielabojiet, paīdziet pārveidot.. lai darbotos uz php 4 versijas..

 

Jau iepriekš pateicos..

Link to comment
Share on other sites

  • Replies 81
  • Created
  • Last Reply

Top Posters In This Topic

Ir vēl jautājums - vai šī darbība, dzēšot datus - varētu nedarboties uz vecākas php vai msql bāzes.. jo testējot localhostā, kur man jaunākās mysql un php versijas - viss darbojas, bet augšuplādēts uz awardspace.com, kur ir ceturtās versijas - nedarbojas..

 

Vienmēr vajag lapu testēt uz tādas pašas php/mysql/apache/sazin-kā-tur-vēl versijas kāda ir uz paredzētā hostēšanas servera.

Link to comment
Share on other sites

Lūdzu palīdziet ar xml dom metodi php 4 versijai.. esmu visādi izmēģinājis, bet k-kur ir kļūda.. palīdziet tak!

 

<?php

$id_old = $_POST['id_old'];

$id = $_POST['id'];
$amount = $_POST['amount'];
$name = $_POST['name'];
$color = $_POST['color'];
$article = $_POST['article'];
$category = $_POST['category'];
$status = $_POST['status'];


$doc = domxml_new_doc("1.0");
$doc -> domxml_open_file("../xml/depot.xml");

$el = $doc -> get_elements_by_tag_name('product');
foreach($el as $element) {
if($element -> get_attribute('id') == $id_old) {
	$element -> parent_node -> remove_child($element);
	break;
}
}

$doc -> dump_file("../xml/depot.xml", false, true);


$myXML = "../xml/depot.xml";

$content = file_get_contents($myXML);
$content = preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\n", $content);

$ending = "</Noliktava>";
$content = substr($content, 0, strpos($content,$ending)-1);

$newData = "	
<product id=\"".$id."\" amount=\"".$amount."\" name=\"".$name."\" color=\"".$color."\" article=\"".$article."\" category=\"".$category."\" status=\"".$status."\"/>
".$ending;

$content.=$newData;

$fHandle = fopen($myXML, "w+");

fwrite($fHandle, $content);
fclose($fHandle);


?>

Link to comment
Share on other sites

Kā varētu nodzēst visu *.xml faila saturu, tobiš produktus? (..iepriekš dzēsu konkrētu produktu pēc "id")

 

*.xml faila saturs:

 

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Noliktava produkcijai="----">
<product id="8" amount="24" name="šķiltavas" color="metāls" article="topico" category="šķiltavas" status="ir"/>
<product id="10" amount="10" name="pulkstenis" color="sudraba" article="0401040" category="pulksteņi" status="ir"/>
</Noliktava>

 

un *.php faila saturs:

 

<?php

$id = $_POST['id'];

$doc = new DOMDocument;
$doc -> load('../xml/depot.xml');

$el = $doc -> getElementsByTagName('product');
foreach($el as $element) {
if($element -> getAttribute('id') == $id) {
	$element -> parentNode -> removeChild($element);
	break;
}
}

// u.t.t.

 

..palīdziet, pamāciet nelaimīgu cilvēku, kas cenšas k-ko iemācīties..

 

Paldies arī par iepriekšējo norādījumu, kā kļūdas apskatīt (tagad visi gudrie smejas);

jautājums - kam vajadzīgs tas

error_reporting(E_ALL);
ini_set('display_errors', 1);

..? (Lietoju Opera browser, kļūdas tāpat arī rāda, ja tādas ir);

Link to comment
Share on other sites

..nu Opera rāda kļūdas arī bez tā

error_reporting(E_ALL);

 

Jautājums, ja atkārtoju funkciju ar "while" un atkārtojumu skaits ir.. nu piemēram līdz 500..

 

$el = $doc -> getElementsByTagName('product');
while ($id <= $count) {
foreach($el as $element) {
	if($element -> getAttribute('id') == $id) {
		$element -> parentNode -> removeChild($element);
		break;
	}
}
$id++;
}

 

..vai pastāv k-kādi servera puses ierobežojumi, intervāli.. vienuvārd sakot - pastāv vai nepastāv iespēja, ka viss varētu nokārties vai kā tamlīdzīgi?

 

..iepriekš - paldies!

Edited by SadDemon
Link to comment
Share on other sites

Nav labak partaisit strukturu xml`am lai nav jachakarejas ar atributiem ?

Piemeram:

<Noliktava>
 <produkts>
<id>1</id>
<amount>2341</amount>
<name>metals</name>
 </produkts>
 <produkts>
<id>2</id>
<amount>555</amount>
<name>sarkans</name>
 </produkts>
</noliktava>

Link to comment
Share on other sites


×
×
  • Create New...