abonnement Unibet Coolblue Bitvavo
pi_65018144
quote:
Op woensdag 14 januari 2009 07:29 schreef SuperRembo het volgende:

[..]

Je loopt recursief door de xml tree heen en bouwt ondertussen de array op. Lijkt me vrij recht toe recht aan.
Inderdaad, en op deze pagina staan een paar prima functies daarvoor (in de comments): http://nl3.php.net/xml_parse
  woensdag 14 januari 2009 @ 09:50:42 #102
85919 Likkende_Lassie
Doe eens wat aan je ondertitel
pi_65019852
Ik probeer het volgende, en ik kan niet anders dan de atribute op te roepen als $data_2->NAAM ipv $data_2[0];..

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$xml = simplexml_load_file('/var/www/html/beheer/temp_uploads/'.$_GET['option_2']);
   
   $row = 0;
   $row_2= 0;
   $dump = array();

   foreach ($xml AS $data){
      $dump[$row] = $data;
      $row++;
        
   }
   
   foreach ($dump AS $data_2){
      echo $data_2->NAAM;
      echo '<br />';
   }
pi_65021244
quote:
foto Op woensdag 14 januari 2009 09:50 schreef Likkende_Lassie het volgende:
Ik probeer het volgende, en ik kan niet anders dan de atribute op te roepen als $data_2->NAAM ipv $data_2[0];..
[ code verwijderd ]
En dat is een probleem omdat?
pi_65021585
Ja als je xml objecten in je array gooit, dan komen er ook weer xml objecten uit.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  woensdag 14 januari 2009 @ 11:05:01 #105
85919 Likkende_Lassie
Doe eens wat aan je ondertitel
pi_65022069
quote:
Op woensdag 14 januari 2009 10:42 schreef Farenji het volgende:

[..]

En dat is een probleem omdat?
ik het niet zo wil aan roepen
dus hoe dat te doen?
pi_65023488
quote:
Op woensdag 14 januari 2009 11:05 schreef Likkende_Lassie het volgende:

ik het niet zo wil aan roepen
dus hoe dat te doen?
Zorgen dat er arrays in komen, en geen objecten
pi_65027385
quote:
foto Op woensdag 14 januari 2009 11:05 schreef Likkende_Lassie het volgende:

[..]

ik het niet zo wil aan roepen
dus hoe dat te doen?
Je kan die hash die door simplexml wordt gemaakt toch omzetten naar elk formaat dat je zelf wil? Daar kun je gewoon je eigen routine voor schrijven. Of je zou je kunnen afvragen waarom je perse de data als array wil benaderen, wat is precies het voordeel?
  woensdag 14 januari 2009 @ 13:32:03 #108
85919 Likkende_Lassie
Doe eens wat aan je ondertitel
pi_65027565
Ik ben bezig met een importmodule, waar zowel CSV als XML bestanden kunnen worden geimporteerd.
Op een gegeven moment kunnen er kolommen worden gekoppeld aan die van de database, zodat elke opbouw van zowel CSV als XML te gebruiken is

Als ik de onderstaande code gebruik, krijg ik deze foutmelding:
Fatal error: Call to a member function attributes() on a non-object in upload.php on line 137

1
2
3
4
5
6
7
$xml = simplexml_load_file('/var/www/html/uploads/9322689b8f690f9d43a47486051bc7db.xml');
foreach($xml->body[0]->attributes() as $a => $b) {
   if($a=='type') {
      echo $a,'="',$b,"\"</br>";
   }else{ 
   }
}


EDIT : volgens mij heb ik het probleem, momentje

[ Bericht 4% gewijzigd door Likkende_Lassie op 14-01-2009 13:38:32 ]
  donderdag 15 januari 2009 @ 10:47:31 #109
85919 Likkende_Lassie
Doe eens wat aan je ondertitel
pi_65062234
Het is gelukt!
Het lukte mij echt totaal niet met de functies die hierboven staan, en als ik wat resultaten kreeg, dan had ik al snel 100 regels aan code. Maar zie hieronder:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
$dom 
= new DomDocument();
      
$dom->load('/uploads/'.$_GET['option_2']);
      
      foreach (
$dom->documentElement->childNodes as $articles) {
         
          if (
$articles->nodeType == && $articles->nodeName == "INFO") {
              foreach (
$articles->childNodes  as $item) {
                  if (
$item->nodeType == AND $i 1) {
                     
$files[0][] = $item->nodeName;
                  }
              }
              
$i++;
          }
      }
?>


pi_65067605
Ik heb weer een leuke vraag, ik heb 2 tabellen die ik join.

1
2
3
4
5
6
7
8
9
10
SELECT images_tree.*, 
       images.id AS imageID, 
       images.filex , 
       images.filey 
FROM images_tree 
LEFT JOIN images ON images.cat_id = images_tree.id 
WHERE images_tree.tree_id = '1' 
GROUP BY images_tree.id 
ORDER BY images_tree.title 
LIMIT 20, 20


daarvoor gebruik ik de volgende tabellen

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
--
-- Tabel structuur voor tabel `images`
--

CREATE TABLE IF NOT EXISTS `images` (
  `id` int(10) unsigned NOT NULL auto_increment,
  `cat_id` mediumint(8) unsigned NOT NULL,
  `user_id` mediumint(8) unsigned NOT NULL,
  `user_ip` varchar(32) NOT NULL,
  `filename` varchar(32) NOT NULL,
  `filedate` date NOT NULL,
  `filetype` char(1) NOT NULL,
  `filesize` int(10) unsigned NOT NULL,
  `filecrc` varchar(15) NOT NULL,
  `filex` mediumint(8) unsigned NOT NULL,
  `filey` mediumint(8) unsigned NOT NULL,
  `views` int(10) unsigned NOT NULL,
  `vote` tinyint(3) unsigned NOT NULL,
  `votes` mediumint(8) unsigned NOT NULL,
  PRIMARY KEY  (`id`),
  UNIQUE KEY `filesize` (`filesize`,`filecrc`,`filex`,`filey`,`cat_id`),
  KEY `cat_id` (`cat_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Tabel structuur voor tabel `images_tree`
--

CREATE TABLE IF NOT EXISTS `images_tree` (
  `id` mediumint(8) unsigned NOT NULL auto_increment,
  `tree_id` mediumint(8) unsigned NOT NULL,
  `title` varchar(32) NOT NULL,
  `description` varchar(255) NOT NULL,
  `images` mediumint(8) unsigned NOT NULL,
  `images_size` bigint(20) unsigned NOT NULL,
  PRIMARY KEY  (`id`),
  KEY `id` (`id`,`tree_id`),
  KEY `title` (`title`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1;


echter kost het ruim 0.3 seconden om 20 afbeeldingen uit te lezen uit een database van 1400 categorieen en 75000 afbeeldingen..

Hoe kan ik deze optimaliseren? ik heb al EXPLAIN op de queries gedaan maar dan blijkt dat er geen filesort gebruikt wordt...
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_65068080
Helpt het als je de KEY id weg haalt bij images_tree en deze vervangt door een index op alleen tree_id?
pi_65068310
Niet bepaald nee, dan wordt de query nog slomer
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  donderdag 15 januari 2009 @ 14:24:32 #113
75592 GlowMouse
l'état, c'est moi
pi_65070278
En wat is de output van EXPLAIN? Grote kans dat het niet veel sneller kan trouwens, GROUP BY col1 ORDER BY col2 is gewoon een vervelende combinatie.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
  donderdag 15 januari 2009 @ 14:43:22 #114
63192 ursel
"Het Is Hier Fantastisch!
pi_65071054
was ik toch bijna dit topic kwijt..
pi_65074906
dit is de explain

1
2
3
id  select_type  table  type  possible_keys  key  key_len  ref  rows  Extra  
1 SIMPLE images_tree index NULL title 34 NULL 1364 Using where; Using temporary 
1 SIMPLE images ref cat_id cat_id 3 ****.images_tree.id 54   


en idd het is nogal wat ongelukkig maar goed
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  donderdag 15 januari 2009 @ 16:52:27 #116
75592 GlowMouse
l'état, c'est moi
pi_65076655
Probeer de GROUP BY eens te wijzigen in GROUP BY images_tree.title,images_tree.id, en aan de index op title ook het veld id toe te voegen index toevoegen op (tree_id,title,id).
Als dat niet werkt: ANALYSE TABLE op de twee tabellen, nog een keer proberen, en anders opnieuw de EXPLAIN-output geven.

[ Bericht 7% gewijzigd door GlowMouse op 15-01-2009 17:01:01 ]
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_65077708
Ja die index werkt idd heerlijk

-edit-
alleen bij de eerste pagina's scheelt het aardig, maar hoever ik in de database kom (qua records) hoe langzamer
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  donderdag 15 januari 2009 @ 17:37:39 #118
75592 GlowMouse
l'état, c'est moi
pi_65078574
quote:
foto Op donderdag 15 januari 2009 17:16 schreef Chandler het volgende:
Ja die index werkt idd heerlijk

-edit-
alleen bij de eerste pagina's scheelt het aardig, maar hoever ik in de database kom (qua records) hoe langzamer
Dat heb je wanneer je LIMIT gebruikt.
Mag ik weten hoe snel de query is op pagina 1, en op pagina 10?
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_65080877
vraagje,

nu ik mijn site online wil plaatsen waar moet ik opletten behalve op captcha tegen spambots en
escape mysql strings?
zijn er dingen waar ik rekening mee moet houden?
behalve dan dat de database online komt te staan.
Redacted
pi_65081621
waar doel je precies op...?
  donderdag 15 januari 2009 @ 20:15:58 #121
136730 PiRANiA
All thinking men are atheists.
pi_65084245
Wie heeft een simpele JOIN tuto?
pi_65084323
quote:
Op donderdag 15 januari 2009 19:09 schreef Xcalibur het volgende:
waar doel je precies op...? :?
ik doel erop

wat voor beveiliging kan je zelf instellen behalve de formulier checks op je website en de sql injectie checks?
1
2
3
4
5
<?php
$PLAATJE 
"rand(1,9)"

echo "<img src =\"leukplaatje".$PLAATJE.".jpg\"/> ";
?>

vond ik wel tof bedacht btw :D
Redacted
pi_65085081
wat wil je dan beveiligen? en waarom?

het random plaatje wat je post is op zich hartstikke leuk natuurlijk, maar heeft niks met beveiling te maken
pi_65085116
quote:
Op donderdag 15 januari 2009 20:36 schreef Xcalibur het volgende:
wat wil je dan beveiligen? en waarom?

het random plaatje wat je post is op zich hartstikke leuk natuurlijk, maar heeft niks met beveiling te maken
nee ik bedoel weren tegen sql injecties.
weren tegen kut users die mijn site proberen plat te leggen.
users die mn database proberen te mollen!
Redacted
pi_65086858
quote:
foto Op donderdag 15 januari 2009 20:37 schreef cablegunmaster het volgende:

[..]

nee ik bedoel weren tegen sql injecties.
weren tegen kut users die mijn site proberen plat te leggen.
users die mn database proberen te mollen!
Door te zorgen dat je in ieder geval niet de 25 gevaarlijkste programmeerfouten maakt.
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')

Het lijkt erop dat je onze advertenties blokkeert

Dat begrijpen we, maar is wel erg jammer. Je kunt FOK! namelijk wel gratis LEZEN, maar we kunnen FOK! niet gratis MAKEN. De inkomsten van de advertenties zorgen ervoor dat we de kosten van de site kunnen dragen zodat je ook morgen FOK! nog kunt bezoeken.

Zou je willen overwegen om voor FOK! een uitzondering te maken in je adblocker (of andere middelen die onze ads blokkeren)? Je krijgt deze melding dan nooit meer te zien.

Ja, ik wil fok.nl whitelisten, laat me zien hoe

Ik neem liever een premium account zodat ik geen advertenties hoef te zien (je moet eerst inloggen)
Ja, breng me naar de shop