abonnement Unibet Coolblue Bitvavo
pi_56502176
Kan PHP geen functies met dezelfde namen hebben? Maar dan met een andere parameter-count of andere parameters? Dus dat je twee maal checklogin hebt, maar dan met een andere parameter-count of type parameters?
  zondag 3 februari 2008 @ 16:13:14 #103
107951 JortK
Immer kwaliteitsposts
pi_56502205
quote:
Op zondag 3 februari 2008 16:11 schreef Geqxon het volgende:
Kan PHP geen functies met dezelfde namen hebben? Maar dan met een andere parameter-count of andere parameters? Dus dat je twee maal checklogin hebt, maar dan met een andere parameter-count of type parameters?
Ik denk het niet ....
pi_56502277
quote:
Op zondag 3 februari 2008 16:13 schreef JortK het volgende:

[..]

Ik denk het niet ....
Misschien wel een toffe voor PHP6
pi_56503043
quote:
Op zondag 3 februari 2008 16:11 schreef Geqxon het volgende:
Kan PHP geen functies met dezelfde namen hebben?
Je kunt geen echte overloads maken in PHP, maar met default waarden voor parameters of anders met func_get_args () / func_num_args() kan je wel bereiken wat jij wil.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_56523007
-opgelost-

[ Bericht 93% gewijzigd door Chandler op 04-02-2008 13:59:49 ]
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_56525642
Ik ben bezig met het maken van een Wordpress template, en zit even met het volgende. Bij het genereren van een <ul> met daarin alle bestaande categorieen krijg ik de volgende output:

1
2
3
4
5
6
<li class="cat-item cat-item-3"><a href="http://localhost:8080/wordpress/?cat=3" title="View all posts filed under Nieuws">Nieuws</a>
</li>
<li class="cat-item cat-item-4 current-cat"><a href="http://localhost:8080/wordpress/?cat=4" title="View all posts filed under Filmpjes">Filmpjes</a>
</li>
<li class="cat-item cat-item-5 current-cat"><a href="http://localhost:8080/wordpress/?cat=4" title="View all posts filed under Opmerkelijk">Opmerkelijk</a>
</li>


Zoals je kan zien krijgt elk nieuwe item een cat-item-$id mee als CSS class. Nu moet mijn menu er als volgt uitzien (kleuren zijn eigenlijk bg-images maar het gaat even om het idee van het verloopje)


Nu ben ik opzoek naar een soort PHP krabbeltje die ik in de <head> kan zetten dat de <li> class met een even ID de volgende css krijgt:

1{background-image:url(images/menu-aan.png) no-repeat;}


en de <li> class met een oneven ID de volgende css:

1{background-image:url(images/menu-uit.png) no-repeat;}


Kan iemand zo lief zijn om zoiets voor mij uit te schrijven? Volgens mij is het een best simpel iets, maar gezien ik nogal een PHP leek ben...

Bij voorbaat dank
you and I ain't done Zeke!
pi_56525881
In deze richting:

1
2
3
4
5
6
7
8
<?php
$List 
'';
foreach(
$Items as $Index => $Item)
{
    
$Class $Index 'uit' 'aan';
    
$List .= sprintf('<li class="%s">%s</li>'$Class'Tekst');
}
?>


Vraagje: Hoe slaan jullie booleans op in een MySQL database? gewoon als 0 als false en 1 als true?
pi_56526838
quote:
Op maandag 4 februari 2008 14:20 schreef super-muffin het volgende:
In deze richting:
[ code verwijderd ]

Vraagje: Hoe slaan jullie booleans op in een MySQL database? gewoon als 0 als false en 1 als true?
Kan als enum, met 0 een 1.
pi_56527430
quote:
Op maandag 4 februari 2008 14:20 schreef super-muffin het volgende:
In deze richting:
[ code verwijderd ]

Vraagje: Hoe slaan jullie booleans op in een MySQL database? gewoon als 0 als false en 1 als true?
een int en dan gewoon 0 en 1
pi_56527782
Ben bezig met een cronjob om een testdatabase te backuppen naar een ftp server en een gmail-adres.
Dit lukt niet echt.
Ik hoop dat iemand zin heeft om te helpen via msn ( msn apenstaart maarten.es )
Dan kan die persoon namens mij misschien inloggen en kijken wat ik fout doen.

[ Bericht 0% gewijzigd door -J-D- op 04-02-2008 16:07:20 (verkeerde msn adres :)) ]
I asked God for a bike, but I know God doesn't work that way.
So I stole a bike and asked for forgiveness.
pi_56528800
quote:
Op maandag 4 februari 2008 15:34 schreef Mordreth het volgende:

[..]

een int en dan gewoon 0 en 1
Tinyint, scheelt db-ruimte. Niet dat die ruimte heel erg boeit, maar toch.
pi_56535485
quote:
Op maandag 4 februari 2008 15:51 schreef -J-D- het volgende:
Ben bezig met een cronjob om een testdatabase te backuppen naar een ftp server en een gmail-adres.
Dit lukt niet echt.
Ik hoop dat iemand zin heeft om te helpen via msn ( msn apenstaart maarten.es )
Dan kan die persoon namens mij misschien inloggen en kijken wat ik fout doen.
Probeer het nu via JomBackup.
Die schijnt eens per dag automatisch een backup te mailen.
Maar weet niet wanneer hij dat doet en wat hij precies verstuurd.
Even een dagje wachten en dan zie ik het.
I asked God for a bike, but I know God doesn't work that way.
So I stole a bike and asked for forgiveness.
pi_56538018
Oke ik ben er net achtergekomen dat ik een klein foutje in m'n database heb zitten (denk ik tenminste)

Ik heb 3 tabellen.

- Wedstrijden
- Competities
- Teams

Nu staat in de wedstrijden tabel een veld met een thuis en eentje met een uit team, beide bevatten een id die overeenkomt met het id nummer in de teams database. Hetzelfde geld voor het veld voor de competie. Nu is het met gelukt om de query te bouwen die zorgt dat de juiste compname opgepakt word.

1
2
3
4
5
6
7
8
<?php
SELECT
 c.comp_name
FROM
 whufc_wedstrijden w, whufc_comps c, whufc_teams t
WHERE
 w.wedstrijd_cid = c.comp_id
?>


Maar hoe zorg ik ervoor dat zowel de juist team naam aan het thuis en uit speelende team gelink word?
West Ham supporters, check: Dutchirons
Dutch Football Manager Site!
Determined to deliver, destined to dominate. - The Third Movement
pi_56538121
Ik gok zoiets:

1
2
3
4
5
SELECT c.comp_name AS Competitie, w.HIERHETVELDVOORWEDSTRIJDNAAM AS Wedstrijd, u.HIERHETVELDVOORTEAMNAAM AS Uit, t.HIERHETVELDVOORTEAMNAAM AS Thuis
FROM whufc_comps c
LEFT JOIN whufc_wedstrijden AS w ON c.ID = w.wedstrijd_cid
LEFT JOIN whufc_teams AS u ON w.HIERHETVELDVOORUITID = u.ID
LEFT JOIN whufc_teams AS t ON w.HIERHETVELDVOORTHUISID = t.ID


Vul de hoofdletters zelf maar in.

[ Bericht 2% gewijzigd door Geqxon op 04-02-2008 23:52:53 ]
pi_56538153
quote:
Op maandag 4 februari 2008 23:47 schreef Geqxon het volgende:
Ik gok zoiets:
[ code verwijderd ]

Vul de hoofdletters zelf maar in.
Thnx, ga me gelijk weer is inlezen in die joins .
West Ham supporters, check: Dutchirons
Dutch Football Manager Site!
Determined to deliver, destined to dominate. - The Third Movement
pi_56538171
Al is het laat en moet iemand mij waarschijnlijk wel even corrigeren.
pi_56538236
Ik ga er iig morgen meer klooien, ga nu slapen .
West Ham supporters, check: Dutchirons
Dutch Football Manager Site!
Determined to deliver, destined to dominate. - The Third Movement
  dinsdag 5 februari 2008 @ 12:14:40 #119
201614 Doc.Brown
Great Scott!
pi_56543677
Grmbl, als ik deze query probeer te draaien dan geeft hij alsnog records weer QTY (voorraad) 0 hebben Terwijl ik toch duidelijk zeg AND QTY > 0..
quote:
SELECT ID, QTY, ARTIST, TITLES, MEDIA, PRICE, CTY FROM producten WHERE ARTIST LIKE 'GOODWIN & OTHERS, RON' OR TITLES LIKE 'GOODWIN & OTHERS, RON' OR LABEL LIKE 'GOODWIN & OTHERS, RON' AND QTY > 0 ORDER BY TITLES ASC
Iemand enig idee waar dit aan kan liggen?\

Overigens roep ik het zo aan in PHP:

1
2
3
<?php
mysql_query
("SELECT ID, ARTIST, TITLES, MEDIA, PRICE, CTY FROM producten WHERE (ARTIST LIKE '%$input%') OR (TITLES LIKE '%$input%') OR (LABEL LIKE '%$input%') AND QTY > 0 ORDER BY TITLES ASC")
?>


[ Bericht 15% gewijzigd door Doc.Brown op 05-02-2008 12:26:20 ]
You have to come back with me! Back to the Future!
pi_56544353
Is QTY wel een integer?

En anders: Werken met haakjes! Mogelijk leest hij het nu als "WHERE A OF B OF (C EN D)".
pi_56544386
Zet haakjes om de OR's

1
2
3
4
5
SELECT ID, ARTIST, TITLES, MEDIA, PRICE, CTY 
FROM producten 
WHERE ((ARTIST LIKE '%$input%') OR (TITLES LIKE '%$input%') OR (LABEL LIKE '%$input%') )
   AND QTY > 0 
ORDER BY TITLES ASC
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  dinsdag 5 februari 2008 @ 13:43:46 #122
201614 Doc.Brown
Great Scott!
pi_56544418
Ah, in PHP staan wel haakjes om de individuele OR's, maar niet om álle OR's. Zal het eens proberen
You have to come back with me! Back to the Future!
pi_56544541
quote:
Op dinsdag 5 februari 2008 13:43 schreef Doc.Brown het volgende:
Ah, in PHP staan wel haakjes om de individuele OR's, maar niet om álle OR's. Zal het eens proberen
Het is niet zozeer dat het om alle ORs moet. In jouw geval is het "Het moet voldoen aan (A OF B OF C) EN D". En dan moet je de haakjes plaatsen zoals SuperRembo dat hierboven toont.
  dinsdag 5 februari 2008 @ 13:57:35 #124
201614 Doc.Brown
Great Scott!
pi_56544574
Ahzo! Het is inmiddels opgelost, een maat van me had iets anders geprobeerd:
quote:
WHERE (ARTIST LIKE '%$input%' AND QTY > 0) or (TITLES LIKE '%$input%' AND QTY > 0) or (LABEL LIKE '%$input%' AND QTY > 0)
Dat werkt, misschien niet de meest nette oplossing dan? Maar het werkt

In ieder geval bedankt
You have to come back with me! Back to the Future!
pi_56548184
Beetje offtopic.... over crontab. Mijn timing: " 0 */4 * * * ". Dit via cPanel ingesteld, dus ik vertrouw het wel.

Klopt het dat hij nu om 0:00, 04:00, 08:00, 12:00, 16:00 en 20:00 draait?

Edit:
05-02-2008 20:00 - Ran update



[ Bericht 20% gewijzigd door Geqxon op 05-02-2008 20:02:45 ]
pi_56550054
quote:
Op dinsdag 5 februari 2008 13:57 schreef Doc.Brown het volgende:
Ahzo! Het is inmiddels opgelost, een maat van me had iets anders geprobeerd:
[..]

Dat werkt, misschien niet de meest nette oplossing dan? Maar het werkt

In ieder geval bedankt
Hou er wel rekening mee dat query's met like en wildcards aan het begin en eind een van de traagste query's zijn; mysql kan er geen gebruik maken van indexes en dat ga je echt merken als je meer dan een paar records in je tabel hebt zitten. Dan wordt het moddertraag.
pi_56566505
Vraagje:

Hoe geef ik twee modes mee aan de functie file_put_contents()?

Ik wil 'FILE_APPEND' én 'LOCK_EX' meegeven, maar weet dus niet hoe. Wat ik tot nu toe heb:
1
2
3
<?php
file_put_contents
($this->errLog$this->timestamp " " implode(',',$this->errors) . "\r\n"FILE_APPEND);
?>


Wie weet hoe ik ze allebei mee kan geven?
pi_56566997
zoals de documentatie zegt:
quote:
joined with the binary OR (|) operator.
http://nl3.php.net/manual/en/function.file-put-contents.php

dus
1
2
3
<?php
FILE_APPEND 
LOCK_EX
?>
pi_56567880
Vraagje, als ik op mijn lokale machine openssl wil toevoegen aan php.ini krijg ik de volgende error



wat kan ik hier aan doen? tevens werkt openssl dan niet
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_56572341
quote:
Op woensdag 6 februari 2008 20:03 schreef Chandler het volgende:
Vraagje, als ik op mijn lokale machine openssl wil toevoegen aan php.ini krijg ik de volgende error

[ afbeelding ]

wat kan ik hier aan doen? tevens werkt openssl dan niet
Je hebt alle benodigde dll's op de aangegeven plaats staan?
http://www.phpbuilder.com/board/showthread.php?t=10337286
http://www.php.net/manual/en/ref.openssl.php

@Arjan321
Gaan we even testen. Waarschijnlijk overheen gelezen omdat ik op zoek was naar een And/& niet naar een OR/|
  woensdag 6 februari 2008 @ 23:34:31 #131
71919 wonderer
Hung like a My Little Pony
pi_56572998
Ik heb een dropdown met een zooi kleuren waar mensen uit kunnen kiezen. De hexcode wordt dan naar een andere tabel weggeschreven, de dropdown wordt uit een tabel gegenereerd. Meestal gaat het goed, maar bij bepaalde kleuren gebeurt er iets vreemds, die pakt hij niet.

688E23 verandert in 3e+25, maar 6B8E23 pakt hij wel gewoon. Het zijn allebei gewoon varchar(6) velden.. Ik snap er geen hol van. Iemand hier misschien?
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
pi_56573160
688E23 wordt gelezen als een getal (688 * 1023, ofwel 6,88 * 1025) en dat wordt als integer weggeschreven. Je hebt die problemen met alle hexcodes waar 1 E in zit en geen andere letter, en die E mag ook niet als eerste teken staan. Een oplossing heb ik even niet zo snel.
pi_56573277
688E23 is een andere manier van schrijven voor 688 * 1023. Dit werkt alleen met decimale getallen dus 6B8 ziet ie niet als een geldig getal.

Je moet zorgen dat php de hexcodes als een string behandelt, en niet als een getal. Als je ze uitprint kun je dat bijv doen door:

1
2
3
<?php
print $hexcode . "";
?>


Je kan ook een variabele casten als een string:

1
2
3
<?php
var $hexstring = (string) $hexcode;
?>
  donderdag 7 februari 2008 @ 00:13:24 #134
71919 wonderer
Hung like a My Little Pony
pi_56573854
Oooh. Heh. Okee, ga ik proberen, dank je wel.

Edit: weird. ik dacht, laat ik settype() gebruiken. Werkte niet. Toen het trucje met .""; erachter. WErkte ook niet. Even controleren wat voor soort string het is met gettype(): string!

En nu weet ik het niet meer Het is dus een string, waarom slaat hij het niet als zodanig op?

[ Bericht 80% gewijzigd door wonderer op 07-02-2008 01:21:12 ]
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
  donderdag 7 februari 2008 @ 07:41:23 #135
136730 PiRANiA
All thinking men are atheists.
pi_56575896
quote:
Op donderdag 7 februari 2008 00:13 schreef wonderer het volgende:
Oooh. Heh. Okee, ga ik proberen, dank je wel.

Edit: weird. ik dacht, laat ik settype() gebruiken. Werkte niet. Toen het trucje met .""; erachter. WErkte ook niet. Even controleren wat voor soort string het is met gettype(): string!

En nu weet ik het niet meer Het is dus een string, waarom slaat hij het niet als zodanig op?
waarom zou je niet char() doen in je database?
pi_56577621
quote:
Op woensdag 6 februari 2008 23:06 schreef Tarabass het volgende:
Je hebt alle benodigde dll's op de aangegeven plaats staan?
http://www.phpbuilder.com/board/showthread.php?t=10337286
http://www.php.net/manual/en/ref.openssl.php
Ze staan op dezelfde plek als ook GD en de rest van de DLL's bestaan gewoon, maar ik vraag me af wat die %1 betekend
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  donderdag 7 februari 2008 @ 10:27:23 #137
84926 WyriHaximus
Release the hounds smithers!
pi_56577685
Kort vraagje: Is het met MySQL mogelijk om in een text veld een stukje text op te zoeken en dit te vervangen met een ander stukje text? (str_replace() idee)
phluphy for president!
pi_56577747
Ik denk niet dat je het met SQL zelf kunt, maar je kunt natuurlijk wel de records ophalen met die tekst, str_replace eroverheen (in PHP) en de records weer updaten
  donderdag 7 februari 2008 @ 10:40:05 #139
84926 WyriHaximus
Release the hounds smithers!
pi_56577867
quote:
Op donderdag 7 februari 2008 10:31 schreef Xcalibur het volgende:
Ik denk niet dat je het met SQL zelf kunt, maar je kunt natuurlijk wel de records ophalen met die tekst, str_replace eroverheen (in PHP) en de records weer updaten
Yeah weet ik maar heeft niet men voorkeur .
phluphy for president!
pi_56577884
replace string in all records from a table :
update mytable set myfield = replace (myfield, "one", "two");
display a modified record set
SELECT REPLACE(myfield, 'one', 'two') from mytable;
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  donderdag 7 februari 2008 @ 10:44:55 #141
84926 WyriHaximus
Release the hounds smithers!
pi_56577943
quote:
Op donderdag 7 februari 2008 10:41 schreef Chandler het volgende:
replace string in all records from a table :
update mytable set myfield = replace (myfield, "one", "two");
display a modified record set
SELECT REPLACE(myfield, 'one', 'two') from mytable;
Tof dankje ff proberen zo . * WyriHaximus gaat backup maken .
phluphy for president!
pi_56578116
hmmm, wist ik niet
Backup lijkt me niet onverstandig inderdaad
pi_56582639
Haha WyriHaximus, had niet verwacht dat jij deze niet zou kennen
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  donderdag 7 februari 2008 @ 14:33:59 #144
84926 WyriHaximus
Release the hounds smithers!
pi_56582781
quote:
Op donderdag 7 februari 2008 14:25 schreef Chandler het volgende:
Haha WyriHaximus, had niet verwacht dat jij deze niet zou kennen
Hehe moet eerlijk zeggen dat ik de docs niet echt lekker vond smorgens voordat ik poste http://dev.mysql.com/doc/refman/4.1/en/replace.html
phluphy for president!
pi_56583885
quote:
Op donderdag 7 februari 2008 14:33 schreef WyriHaximus het volgende:
[..]
Hehe moet eerlijk zeggen dat ik de docs niet echt lekker vond smorgens voordat ik poste http://dev.mysql.com/doc/refman/4.1/en/replace.html
Je moet ook naar de replace functie kijken, niet naar het replace statement
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  donderdag 7 februari 2008 @ 15:50:27 #146
84926 WyriHaximus
Release the hounds smithers!
pi_56584222
quote:
Op donderdag 7 februari 2008 15:32 schreef SuperRembo het volgende:

[..]

Je moet ook naar de replace functie kijken, niet naar het replace statement
Aye . (Heb daarnaast altijd ruzie met dingen op hun site te zoeken .)
phluphy for president!
  donderdag 7 februari 2008 @ 19:58:20 #147
71919 wonderer
Hung like a My Little Pony
pi_56588995
*zucht* Het werkt niet. Ik heb verschillende kolomtypen geprobeerd (char, tinyblob, tinytext) maar niks slaat het werkelijk als string op.

Ik snap er geen flikker van
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
pi_56589233
zowel (var)char als *text slaan dingen als strings op? Wat probeer je?
pi_56589636
Hoe zet je de gegevens in je formulier?

Laat eens wat code zien, je moet gewoon een kleine fout hebben gemaakt
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  donderdag 7 februari 2008 @ 20:42:24 #150
71919 wonderer
Hung like a My Little Pony
pi_56589876
1
2
3
4
5
6
<select name="kleur" id="kleur" style="background-color:#000000;color:#ffeeee;">
<option style="color:#ffffff;" value="ffffff">wit</option>
<option style="color:#000080;" value="000080">marine blauw</option>
<option style="color:#000099;" value="000099">000099</option>

etc


En dan in de code:
$kleur=$_POST["kleur"];
en gewoon een update query, niks bijzonders. Hij doet het bij andere kleurcodes ook gewoon, alleen bij degene met maar een "e" erin dus niet...
Ik haal wel alle variabelen die uit een formulier komen door een magic_quotes dinges tegen sql-injection, maar ik denk niet dat dat er iets mee te maken heeft...

Overigens doe ik echo gettype($kleur) en echo $kleur bij het bericht dat het is opgeslagen, en daar klopt de waarde en is het een string. Er gaat dus iets mis bij het opslaan

Als ik het er via phpMyAdmin inzet, werkt het wel, maar da's verre van ideaal natuurlijk.
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
pi_56590351
quote:
Op maandag 4 februari 2008 23:47 schreef Geqxon het volgende:
Ik gok zoiets:
[ code verwijderd ]

Vul de hoofdletters zelf maar in. :+
Dit is hem uiteindelijk geworden:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
SELECT
         w.wedstrijd_id AS wid,
         w.wedstrijd_datum AS datum,
         t.team_naam AS thuis,
         u.team_naam AS uit,
         w.wedstrijd_score AS score,
         c.comp_name AS compnaam
      FROM
         whufc_wedstrijden w
      INNER JOIN
         whufc_teams AS t ON w.wedstrijd_thuis = t.team_id
      INNER JOIN 
         whufc_teams AS u ON w.wedstrijd_uit = u.team_id
      INNER JOIN 
         whufc_comps AS c ON w.wedstrijd_cid = c.comp_id
      WHERE
         w.wedstrijd_sid = $actsid
      ORDER BY
         w.wedstrijd_datum
West Ham supporters, check: Dutchirons
Dutch Football Manager Site!
Determined to deliver, destined to dominate. - The Third Movement
pi_56590498
quote:
Op donderdag 7 februari 2008 21:01 schreef MrDoegewoon het volgende:

[..]

Dit is hem uiteindelijk geworden:
[ code verwijderd ]
Top dat het gelukt is!
pi_56591106
quote:
Op donderdag 7 februari 2008 20:42 schreef wonderer het volgende:

Overigens doe ik echo gettype($kleur) en echo $kleur bij het bericht dat het is opgeslagen, en daar klopt de waarde en is het een string. Er gaat dus iets mis bij het opslaan
Gaat het fout bij het opslaan of bij het weer uitlezen? Als je eerst opslaat en dan met phpmyadmin kijkt wat er dan staat dan heb je vast meer info

Toevoeging: heb je ook de hele query, zoals je die in php opbouwt? Ik denk dat het daar mis gaat namelijk.

[ Bericht 7% gewijzigd door Light op 07-02-2008 21:49:08 (Toevoeging) ]
  donderdag 7 februari 2008 @ 21:41:50 #154
134533 donroyco
dus niet Donroyco
pi_56591143
Even een tvp, wil een (simpel) gastenboek opzetten, maar weet helemaal niet waar ik moet beginnen
Op maandag 29 september 2008 11:45 schreef HostiMeister het volgende:
Dat is zeg maar de Nederlandse taal op een vuige keukentafel voorover buigen en hem dan zonder glijmiddel anaal verkrachten. :'(
  donderdag 7 februari 2008 @ 21:50:54 #155
71919 wonderer
Hung like a My Little Pony
pi_56591339
quote:
Op donderdag 7 februari 2008 21:39 schreef Light het volgende:

[..]

Gaat het fout bij het opslaan of bij het weer uitlezen? Als je eerst opslaat en dan met phpmyadmin kijkt wat er dan staat dan heb je vast meer info

Toevoeging: heb je ook de hele query, zoals je die in php opbouwt? Ik denk dat het daar mis gaat namelijk.
Opslaan. Hij slaat het als numerieke waarde (of zo) op, namelijk (bijv) 7e+23. En dat is dan 688E25.
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
pi_56592293
quote:
Op donderdag 7 februari 2008 21:50 schreef wonderer het volgende:

[..]

Opslaan. Hij slaat het als numerieke waarde (of zo) op, namelijk (bijv) 7e+23. En dat is dan 688E25.
Hoe bouw je die query op in php? Als in, wat geef je mysql_query mee? Ik denk dat het daar mis gaat, en dan wel met de quotjes.
  donderdag 7 februari 2008 @ 22:57:21 #157
71919 wonderer
Hung like a My Little Pony
pi_56592811
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$d
=connectDB();

$result=runquery("UPDATE chat_handles SET chatname=".quote_smart($chatname,$d).", avatar=".quote_smart($avatar,$d).", kleur=".quote_smart($kleur,$d).", accesskey=".quote_smart($accesskey,$d).", description=".quote_smart($description,$d)." WHERE saveas=".quote_smart($saveas,$d)." AND username=".quote_smart($user,$d),$d);

function 
quote_smart($value,$dblink)
{
 if (
get_magic_quotes_gpc()) {
  
$value stripslashes($value);
 }

 if (!
is_numeric($value)) {
  
$value "'" mysql_real_escape_string($value,$dblink) . "'";
 }
 return 
$value;
}
?>


Helpt dit? ;)
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
pi_56593446
de is_numeric op (688E25) geeft (waarschijnlijk) true terug, waardoor je dus geen quotes in je query krijgt, en je dus een integer (688E25) in je string kolom`kleur` probeert op te slaan.

Om dit op te lossen kan je bijvoorbeeld een derde optionele parameter maken die forced om toch quotes om je value heen te geven..
1
2
3
4
5
<?php
if (!is_numeric($value) || $force) {
  
$value = "'" . mysql_real_escape_string($value,$dblink) . "'";
}
?>


sowieso kan je op jouw huidige manier (een hoop) onnodige conversies in je database server krijgen, omdat dingen als string worden opgeslagen maar als integer kunnen binnenkomen..
pi_56593486
quote:
Op donderdag 7 februari 2008 22:57 schreef wonderer het volgende:

[ code verwijderd ]

Helpt dit?
Ja Het gaat mis door de is_numeric() want is_numeric('688e23') levert true op.
pi_56593718
quote:
Op donderdag 7 februari 2008 23:22 schreef Arjan321 het volgende:
de is_numeric op (688E25) geeft (waarschijnlijk) true terug, waardoor je dus geen quotes in je query krijgt, en je dus een integer (688E25) in je string kolom`kleur` probeert op te slaan.

Om dit op te lossen kan je bijvoorbeeld een derde optionele parameter maken die forced om toch quotes om je value heen te geven..
[ code verwijderd ]

sowieso kan je op jouw huidige manier (een hoop) onnodige conversies in je database server krijgen, omdat dingen als string worden opgeslagen maar als integer kunnen binnenkomen..
Alles wat in een text/(var)char veld in een database moet komen, moet worden voorzien van quotes. En alles wat in een getalveld komt, mag juist geen quotes hebben. Niet dat MySQL zo strikt is, maar 't is beter om het goed aan te wennen.

Ik zou het zo doen:
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$result
=runquery("UPDATE chat_handles SET chatname='".quote_smart($chatname,$d)."', avatar='".quote_smart($avatar,$d)."', kleur='".quote_smart($kleur,$d)."', accesskey='".quote_smart($accesskey,$d)."', description='".quote_smart($description,$d)."' WHERE saveas='".quote_smart($saveas,$d)."' AND username='".quote_smart($user,$d)."'",$d);

function 
quote_smart($value,$dblink)
{
 if (
get_magic_quotes_gpc()) {
  
$value stripslashes($value);
 }

 
//Het is niet echt erg om een getal te string_escapen, het getal verandert er iig niet door.
 
return mysql_real_escape_string($value,$dblink);
}
?>
  vrijdag 8 februari 2008 @ 00:04:20 #161
62215 qu63
..de tijd drinkt..
pi_56594284
quote:
Op donderdag 31 januari 2008 16:44 schreef Farenji het volgende:
- de tekst per regel inlezen
- als de regel met een ; begint: skippen
- met een regexp de md5 hash en de filename eruitfilteren:

Ongetest:
/^([a-f0-9]{32})/ voor de md5 (het gaat om het gedeelte tussen haakjes)
/\*(.*)$/ voor de filename

De md5 hashcode is (per definitie!) uniek voor een bestand dus die kun je als key gebruiken in je database.
eerste regexp doet niks, en de 2e doet het half :{
1
2
3
4
<?php
preg_match_all
("/\*(.*)$/ ",$_POST["hash"],$hash);
print_r($hash);
?>


inhoud van $_PST["hash"] is
1; Fsum Frontend v1.5.1 ; ; Generated on 2008-01-31 at 15:22:08 ; ; Size: 620 bytes, Creation date: 2006-03-15 14:34:33, Modification date: 2006-03-15 14:34:33 e59d318ae34e9190f51e10544d17ab9a *POTWDVD019 - Rock Aid America - The Making of Smoke On The Water.md5 ; Size: 2021 bytes, Creation date: 2006-03-15 14:34:34, Modification date: 2006-03-15 14:34:34 a9417892c908eef3c573220b6a24c3bf *POTWDVD019.txt ; Size: 14309 bytes, Creation date: 2006-03-15 14:34:08, Modification date: 2006-03-15 14:34:09 65eccd74397d7a6fa403d871f30870a1 *VIDEO_TS\VIDEO_TS.BUP ; Size: 26597 bytes, Creation date: 2006-03-15 14:34:10, Modification date: 2006-03-15 14:34:11 65eccd74397d7a6fa403d871f30870a1 *VIDEO_TS\VIDEO_TS.IFO ; Size: 73701 bytes, Creation date: 2006-03-15 14:34:12, Modification date: 2006-03-15 14:34:12 196d82e1f7afacc6ea4f4a1caa0dbc2f *VIDEO_TS\VIDEO_TS.VOB ; Size: 114661 bytes, Creation date: 2006-03-15 14:34:13, Modification date: 2006-03-15 14:34:19 f7e5eb930e876929c42064702dc9a111 *VIDEO_TS\VTS_01_0.BUP ; Size: 155621 bytes, Creation date: 2006-03-15 14:34:20, Modification date: 2006-03-15 14:34:23 f7e5eb930e876929c42064702dc9a111 *VIDEO_TS\VTS_01_0.IFO ; Size: 10924005 bytes, Creation date: 2006-03-15 14:34:34, Modification date: 2006-03-15 15:24:07 5defea3427c04218c81dff47ee69f1a0 *VIDEO_TS\VTS_01_0.VOB ; Size: 1083848677 bytes, Creation date: 2006-03-15 15:24:08, Modification date: 2006-03-28 03:14:40 72b9c827ec29e43ce356b8733e5e2957 *VIDEO_TS\VTS_01_1.VOB ; Size: 2156382181 bytes, Creation date: 2006-04-02 13:17:52, Modification date: 2006-04-18 10:15:47 d1db84986d126e5838f167bd52e3be56 *VIDEO_TS\VTS_01_2.VOB ; Size: 3229100005 bytes, Creation date: 2006-04-03 14:09:27, Modification date: 2006-04-16 17:39:54 48e67b2589ddc5e60ef2e156d4e23b0b *VIDEO_TS\VTS_01_3.VOB ; Size: 3329441765 bytes, Creation date: 2006-04-08 06:02:52, Modification date: 2006-04-08 08:19:34 c308f264d32ff5b645e9b9485e7b34c1 *VIDEO_TS\VTS_01_4.VOB


en de uitkomst is:
1Array ( [0] => Array ( [0] => *VIDEO_TS\VTS_01_4.VOB ) [1] => Array ( [0] => VIDEO_TS\VTS_01_4.VOB ) )


-O-

iemand een tip :?
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  vrijdag 8 februari 2008 @ 05:19:35 #162
71919 wonderer
Hung like a My Little Pony
pi_56596557
Ah! Okee, thanks.
Ga ik proberen
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
pi_56597276
quote:
Op vrijdag 8 februari 2008 00:04 schreef qu63 het volgende:
iemand een tip
http://www.regular-expressions.info/
pi_56597597
teeveephp
ne okuyon, bokmu var?
pi_56597725
quote:
Op vrijdag 8 februari 2008 00:04 schreef qu63 het volgende:

inhoud van $_PST["hash"] is
[ code verwijderd ]
Weet je zeker dat het bestand netjes per regel wordt ingelezen? Het lijkt er op dat het een bestand van 1 regel is, of dat het als zodanig wordt ingelezen.
  vrijdag 8 februari 2008 @ 09:59:21 #166
62215 qu63
..de tijd drinkt..
pi_56598354
quote:
Op vrijdag 8 februari 2008 09:19 schreef Light het volgende:

[..]

Weet je zeker dat het bestand netjes per regel wordt ingelezen? Het lijkt er op dat het een bestand van 1 regel is, of dat het als zodanig wordt ingelezen.
in de textarea staat het over meerdere regels verspreid, maar in de $_POST komt het als 1 regel er uit geloof ik.. Ik ga wel weer wat aanklooien
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_56600366
check eens op \r\n, \r en \n als regeleinden....
  vrijdag 8 februari 2008 @ 12:06:37 #168
62215 qu63
..de tijd drinkt..
pi_56600430
quote:
Op vrijdag 8 februari 2008 12:01 schreef Xcalibur het volgende:
check eens op \r\n, \r en \n als regeleinden.... :)
ik heb wel
1
2
3
4
<?php
preg_match_all
("/\*(.*)$/ ",str_replace("\n","<br>",$_POST["hash"]),$hash);
print_r($hash);
?>

geprobeerd, maar dan komt er
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
42
43
44
45
Array ( [0] => Array ( [0] => *POTWDVD019 - Rock Aid America - The Making of Smoke On The Water.md5
; Size: 2021 bytes, Creation date: 2006-03-15 14:34:34, Modification date: 2006-03-15 14:34:34
a9417892c908eef3c573220b6a24c3bf *POTWDVD019.txt
; Size: 14309 bytes, Creation date: 2006-03-15 14:34:08, Modification date: 2006-03-15 14:34:09
65eccd74397d7a6fa403d871f30870a1 *VIDEO_TS\VIDEO_TS.BUP
; Size: 26597 bytes, Creation date: 2006-03-15 14:34:10, Modification date: 2006-03-15 14:34:11
65eccd74397d7a6fa403d871f30870a1 *VIDEO_TS\VIDEO_TS.IFO
; Size: 73701 bytes, Creation date: 2006-03-15 14:34:12, Modification date: 2006-03-15 14:34:12
196d82e1f7afacc6ea4f4a1caa0dbc2f *VIDEO_TS\VIDEO_TS.VOB
; Size: 114661 bytes, Creation date: 2006-03-15 14:34:13, Modification date: 2006-03-15 14:34:19
f7e5eb930e876929c42064702dc9a111 *VIDEO_TS\VTS_01_0.BUP
; Size: 155621 bytes, Creation date: 2006-03-15 14:34:20, Modification date: 2006-03-15 14:34:23
f7e5eb930e876929c42064702dc9a111 *VIDEO_TS\VTS_01_0.IFO
; Size: 10924005 bytes, Creation date: 2006-03-15 14:34:34, Modification date: 2006-03-15 15:24:07
5defea3427c04218c81dff47ee69f1a0 *VIDEO_TS\VTS_01_0.VOB
; Size: 1083848677 bytes, Creation date: 2006-03-15 15:24:08, Modification date: 2006-03-28 03:14:40
72b9c827ec29e43ce356b8733e5e2957 *VIDEO_TS\VTS_01_1.VOB
; Size: 2156382181 bytes, Creation date: 2006-04-02 13:17:52, Modification date: 2006-04-18 10:15:47
d1db84986d126e5838f167bd52e3be56 *VIDEO_TS\VTS_01_2.VOB
; Size: 3229100005 bytes, Creation date: 2006-04-03 14:09:27, Modification date: 2006-04-16 17:39:54
48e67b2589ddc5e60ef2e156d4e23b0b *VIDEO_TS\VTS_01_3.VOB
; Size: 3329441765 bytes, Creation date: 2006-04-08 06:02:52, Modification date: 2006-04-08 08:19:34
c308f264d32ff5b645e9b9485e7b34c1 *VIDEO_TS\VTS_01_4.VOB ) [1] => Array ( [0] => POTWDVD019 - Rock Aid America - The Making of Smoke On The Water.md5
; Size: 2021 bytes, Creation date: 2006-03-15 14:34:34, Modification date: 2006-03-15 14:34:34
a9417892c908eef3c573220b6a24c3bf *POTWDVD019.txt
; Size: 14309 bytes, Creation date: 2006-03-15 14:34:08, Modification date: 2006-03-15 14:34:09
65eccd74397d7a6fa403d871f30870a1 *VIDEO_TS\VIDEO_TS.BUP
; Size: 26597 bytes, Creation date: 2006-03-15 14:34:10, Modification date: 2006-03-15 14:34:11
65eccd74397d7a6fa403d871f30870a1 *VIDEO_TS\VIDEO_TS.IFO
; Size: 73701 bytes, Creation date: 2006-03-15 14:34:12, Modification date: 2006-03-15 14:34:12
196d82e1f7afacc6ea4f4a1caa0dbc2f *VIDEO_TS\VIDEO_TS.VOB
; Size: 114661 bytes, Creation date: 2006-03-15 14:34:13, Modification date: 2006-03-15 14:34:19
f7e5eb930e876929c42064702dc9a111 *VIDEO_TS\VTS_01_0.BUP
; Size: 155621 bytes, Creation date: 2006-03-15 14:34:20, Modification date: 2006-03-15 14:34:23
f7e5eb930e876929c42064702dc9a111 *VIDEO_TS\VTS_01_0.IFO
; Size: 10924005 bytes, Creation date: 2006-03-15 14:34:34, Modification date: 2006-03-15 15:24:07
5defea3427c04218c81dff47ee69f1a0 *VIDEO_TS\VTS_01_0.VOB
; Size: 1083848677 bytes, Creation date: 2006-03-15 15:24:08, Modification date: 2006-03-28 03:14:40
72b9c827ec29e43ce356b8733e5e2957 *VIDEO_TS\VTS_01_1.VOB
; Size: 2156382181 bytes, Creation date: 2006-04-02 13:17:52, Modification date: 2006-04-18 10:15:47
d1db84986d126e5838f167bd52e3be56 *VIDEO_TS\VTS_01_2.VOB
; Size: 3229100005 bytes, Creation date: 2006-04-03 14:09:27, Modification date: 2006-04-16 17:39:54
48e67b2589ddc5e60ef2e156d4e23b0b *VIDEO_TS\VTS_01_3.VOB
; Size: 3329441765 bytes, Creation date: 2006-04-08 06:02:52, Modification date: 2006-04-08 08:19:34
c308f264d32ff5b645e9b9485e7b34c1 *VIDEO_TS\VTS_01_4.VOB ) )

uit.

Dan pakt ie dus weer alles..
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_56601554
maar je leest het bestand niet per regel in dan?
Dat lijkt me wel een goed begin namelijk.....

En dan dus per regel de regex eroverheen, dan moet het een stuk overzichtelijker worden
pi_56601889
qu63, met deze regex krijg ik de uitgebreide variant prima geregext:

1
2
3
4
5
6
7
8
<?php
    $regular_expression 
'#; Size: ([0-9]{1,20}) bytes, ';
    
$regular_expression .= 'Creation date: ([0-9]{4}-[0-9]{2}-[0-9]{2}) ([0-9]{2}:[0-9]{2}:[0-9]{2}), ';
    
$regular_expression .= 'Modification date: ([0-9]{4}-[0-9]{2}-[0-9]{2}) ([0-9]{2}:[0-9]{2}:[0-9]{2})';
    
$regular_expression .= '\r\n([a-z0-9]{32})';
    
$regular_expression .= ' \*(.*)\r\n#Us';
    
preg_match_all($regular_expression$data$matchesPREG_SET_ORDER);
?>
  vrijdag 8 februari 2008 @ 13:58:22 #171
62215 qu63
..de tijd drinkt..
pi_56602311
quote:
Op vrijdag 8 februari 2008 13:16 schreef Xcalibur het volgende:
maar je leest het bestand niet per regel in dan?
Dat lijkt me wel een goed begin namelijk.....

En dan dus per regel de regex eroverheen, dan moet het een stuk overzichtelijker worden
ik heb er nu een textarea van gemaakt ipv een file-upload.
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  vrijdag 8 februari 2008 @ 13:58:41 #172
62215 qu63
..de tijd drinkt..
pi_56602327
quote:
Op vrijdag 8 februari 2008 13:36 schreef Geqxon het volgende:
qu63, met deze regex krijg ik de uitgebreide variant prima geregext:
[ code verwijderd ]
thanks, ik ga daar wel ff mee spelen
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_56603730
ik zit met het volgende probleem

ik heb bijvoorbeeld een array met ingredienten die van toepassing zijn op 1 pizza en nou wil ik deze array uitlezen en er 1! link van maken dus je moet iets krijgen als:

Link1: kaas, tomaat, ui

wanneer ik op deze manier uitlees, dan krijg ik wel de ingredienten te zien maar dan als 3 losse linkjes alhoewel ze wel naar één document verwijzen

1
2
3
4
5
foreach ($ingredienten as $key => $value)

   {
   echo $value="<a href='pizza.php?id=" . $pizzaID . "'>$value</a>";
   }



hoe kan ik dit combineren zodat die 3 losse elementen samengevoegd worden tot 1 link? dat staat wat mooier nl :)
pi_56603920
1
2
3
4
5
6
7
8
9
10
11
<?php
echo "<a href='pizza.php?id=" $pizzaID "'>";

foreach (
$ingredienten as $key => $value)

   {
   echo 
$value;
   }

echo 
"</a>";
?>


Zoiets?
pi_56603947
@warezguy05: Je zou eerst door de ingrediënten kunnen loopen en daarna pas de link opbouwen?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
//bij dit voorbeeld ga ik er vanuit dat je een array hebt die
//oplopende getallen heeft als keys
$ingredientenlink '';
$aantal_ingredienten count($ingredienten);
for(
$i 0$i$aantal_ingredienten$i++)
{
    
//het stukje na de . kijkt of het het laatste ingredient uit de array is
 
$ingredientenlink .= $ingredienten[$i] . ($i == $aantal_ingredienten '' ', ');
}
    echo 
'<a href="pizza.php?id=' $pizzaID '">' $ingredientenlink '</a>';

//bij dit voorbeeld maakt het niet uit wat de keys van je array zijn
$ingredientenlink '';
$aantal_ingredienten count($ingredienten);
$i 1;
foreach(
$ingredienten as $ingredient)
{
 
$ingredientenlink .= $ingredient . ($i == $aantal_ingredienten '' ', ');
 
$i++;
}
    echo 
'<a href="pizza.php?id=' $pizzaID '">' $ingredientenlink '</a>';
?>


Edit: Geqxon was eerder.

[ Bericht 6% gewijzigd door fokME2 op 08-02-2008 15:50:04 (ik zat niet op te letten :') ) ]
pi_56604112
fokME2, what the hell.
pi_56604228
Wat?
SPOILER
Om spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.


[ Bericht 56% gewijzigd door fokME2 op 08-02-2008 15:51:49 ]
pi_56604459
Bring it on!

1
2
3
<?php
printf
("<a href='pizza.php?id=%s>%s</a>"$pizzaID implode(",",$ingredienten) );
?>


:6
pi_56604515
Ha! Daar heb je niet van terug he!
  vrijdag 8 februari 2008 @ 16:03:46 #180
62215 qu63
..de tijd drinkt..
pi_56604583
hoe kan ik weten hoeveel matches ik heb met Geqxon's preg_match_all?
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_56604613
Kleine vraag; hoe kan ik alle karakters uit een stuk test die niet a-Z0-9_- zijn verwijderen?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_56604640
quote:
Op vrijdag 8 februari 2008 16:03 schreef qu63 het volgende:
hoe kan ik weten hoeveel matches ik heb met Geqxon's preg_match_all?
Als de PREG_SET_ORDER flag aan staat kan dat met "count($matches)", waarbij $matches de array met gevonden resultaten is.
pi_56604793
quote:
Op vrijdag 8 februari 2008 16:06 schreef Chandler het volgende:
Kleine vraag; hoe kan ik alle karakters uit een stuk test die niet a-Z0-9_- zijn verwijderen?
ereg_replace("[^A-Za-z0-9]", "", $string);
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_56604974
quote:
Op vrijdag 8 februari 2008 15:28 schreef Geqxon het volgende:

[ code verwijderd ]

Zoiets?
lol ja zo simpel is het

fokME2, ook bedankt voor de suggestie!
pi_56605094
Moggel

Ik ben bezig met een projectje, bij de opzet hiervan heb ik gekozen om de page routing te laten lopen via een custom 404. Op die manier krijg je mooie urls als http://www.computeraap.com/foo/bar/. Ook kan ik zo makkelijk dingen gescheiden houden en dynamisch uitvoeren.

Werkt allemaal prima, alleen bij het posten van een formulier naar /foo/bar/ blijft de $_POST variabele leeg, dit zal wel te maken hebben met die 404.

Iemand misschien een oplossing hiervoor? Behalve natuurlijk alles opsplitsen in phptjes en daar naar toe posten.
  vrijdag 8 februari 2008 @ 16:37:58 #186
39436 Dreammaster
Dat zei je moeder vannacht ook
pi_56605287
waarom niet met een ModRewrite

[ Bericht 13% gewijzigd door Dreammaster op 08-02-2008 16:45:45 ]
  vrijdag 8 februari 2008 @ 16:55:15 #187
62215 qu63
..de tijd drinkt..
pi_56605566
op de een of andere naier skipped die preg_match_all de laatste .VOB in de lijst
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_56605660
quote:
Op vrijdag 8 februari 2008 16:55 schreef qu63 het volgende:
op de een of andere naier skipped die preg_match_all de laatste .VOB in de lijst
Ik zie het al. Dat komt zo te zien door de \r\n op het einde. Probeer het eens met deze weggehaald?
  vrijdag 8 februari 2008 @ 17:09:05 #189
62215 qu63
..de tijd drinkt..
pi_56605780
quote:
Op vrijdag 8 februari 2008 17:01 schreef Geqxon het volgende:

[..]

Ik zie het al. Dat komt zo te zien door de \r\n op het einde. Probeer het eens met deze weggehaald?
dan pakt ie wel alle bestanden ja, alleen nu werken alleen de hashcodes nog, filename blijft leeg
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_56607386
quote:
Op vrijdag 8 februari 2008 15:56 schreef Geqxon het volgende:
Bring it on!
[ code verwijderd ]

:6
O leuk, gaan we golfen? :)

1
2
3
<?php
echo "<a href='pizza.php?id=$pizzaID'>".join(',',$ingredienten)."</a>";
?>
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_56614942
quote:
Op vrijdag 8 februari 2008 18:49 schreef SuperRembo het volgende:

[..]

O leuk, gaan we golfen?
[ code verwijderd ]
"join — Alias of implode()".

Na-apert.
pi_56617593
quote:
Op vrijdag 8 februari 2008 18:49 schreef SuperRembo het volgende:

[..]

O leuk, gaan we golfen?
[ code verwijderd ]
1<?="<a href=pizza.php?id=$pizzaID>".join(', ',$ingredienten)."</a>"



Met spatie!

Naja, ik ben slapen.

[ Bericht 14% gewijzigd door fokME2 op 09-02-2008 12:45:53 ]
pi_56625084
Een vraagje.

Ik gebruik het volgende

1stristr($url_tmp, $query1)


$url_tmp = http://www.google.nl/search?hl=nl&q=een+zoek+woord&meta=
$query1 = q=

maar zag ik een query afkomstig van google met aq er in :{ oftewel

http://www.google.nl/search?hl=nl&q=een+zoek+woord&aq=een+ander+zoek+woord&meta=

maar nu zou ik graag de stristr functie willen replacen met iets waarbij ik ook goed ? of & kan uitlezen.

Heeft iemand een goed idee?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_56625881
Zoiets:

1
2
3
4
5
6
7
8
9
10
11
12
<?php
    $url 
"http://www.google.nl/search?hl=nl&q=een+zoek+woord&aq=een+ander+zoek+woord&meta=";
    
$parameters parse_url($urlPHP_URL_QUERY);
    
$parameters explode("&"$parameters);
    
$parameter_array = array();
    
    foreach (
$parameters as $parameter){
        list(
$key$value) = explode("="$parameter);
        
        
$parameter_array[$key] = $value;
    }
?>

?

Al kan een regex ook prima.

[ Bericht 21% gewijzigd door Geqxon op 09-02-2008 18:04:18 ]
pi_56641611
ik denk dat je voor het mooie zelfs het parsen van de query string kan laten uitvoeren door parse_str, http://nl3.php.net/manual/en/function.parse-str.php
pi_56647585
Idd Geqxon, dat is ook een optie... maar ik denk even verder
@Arjan321: kan ook, zal er even naar kijken.

Iets anders

Aangezien parsen van vele sites nogal intensief is vraag ik mij af of dit (zie code) te behappen is als je bv 1000 gebruikers p/minuut op je site krijgt.

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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
<?php
function getmicrotime()
{
    list(
$usec$sec) = explode(" "microtime());
    return ((float)
$usec + (float)$sec);
}
function 
php_get_browser($agent NULL)
{
    
$agent $agent $agent $_SERVER['HTTP_USER_AGENT'];
    
$yu    = array();
    
$q_s   = array("#\.#","#\*#","#\?#");
    
$q_r   = array("\.",".*",".?");
    
$brows parse_ini_file("browscap.ini"true);

    foreach (
$brows as $k => $t)
    {
        if (
fnmatch($k$agent))
        {
            
$yu['browser_name_pattern'] = $k;
            
$pat preg_replace($q_s$q_r$k);
            
$yu['browser_name_regex'] = strtolower("^" $pat "$");

            foreach (
$brows as $g => $r)
            {
                if (
$t['Parent'] == $g)
                {
                    foreach (
$brows as $a => $b)
                    {
                        if (
$r['Parent'] == $a)
                        {
                            
$yu array_merge($yu$b$r$t);
                            foreach(
$yu as $d => $z)
                            {
                                
$l strtolower($d);
                                
$hu[$l] = $z;
                            }
                        }
                    }
                }
            }

            break;
        }
    }
    
    return 
$hu;
}


$start getMicroTime();

if (!
function_exists('fnmatch'))
{
    function 
fnmatch($pattern$string)
    {
        return @
preg_match('/^' strtr(addcslashes($pattern'/\\.+^$(){}=!<>|'), array('*' => '.*''?' => '.?')) . '$/i'$string);
    }
}

echo 
'<pre>';

$brouwser php_get_browser();

$brouwser['browser'] = str_replace("IE""Internet Explorer"$brouwser['browser']);

print_r($brouwser);

echo 
round(getMicroTime() - $start2);
 
?>


Voorbeeld: http://www.ipcounter.nl/test/getbrowser.php

Ps. browscap.ini is ruim 300KB!

Op mijn host kan ik namelijk geen get_browser gebruiken aangezien de browscap.ini niet gezet is
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_56650353
quote:
Op zondag 10 februari 2008 17:34 schreef Chandler het volgende:
Aangezien parsen van vele sites nogal intensief is vraag ik mij af of dit (zie code) te behappen is als je bv 1000 gebruikers p/minuut op je site krijgt.
[ code verwijderd ]
Wat is er zo vreselijk interessant aan welke browser/os een bezoeker precies gebruikt, waarom zou je daar zo veel webserverpower aan verspillen?

$brouwser
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_56650720
1
2
3
4
5
6
7
8
9
10
11
12
    foreach ($brows as $k => $t)
    {
    [..]
    
        foreach ($brows as $g => $r)
            {
            [..]
                    foreach ($brows as $a => $b)
                    {
                    [..]
                            $yu = array_merge($yu, $b, $r, $t);
                            foreach($yu as $d => $z)


Dit lijkt me niet echt optimaal, heel zachtjes uitgedrukt.
pi_56650794
quote:
Op zondag 10 februari 2008 19:59 schreef SuperRembo het volgende:

[..]

Wat is er zo vreselijk interessant aan welke browser/os een bezoeker precies gebruikt, waarom zou je daar zo veel webserverpower aan verspillen?

$brouwser
Ja ja Brouwser

Maaruh gewoon, ik wil deze statistieken bewaren
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_56651063
quote:
Op zondag 10 februari 2008 20:16 schreef Chandler het volgende:

[..]

Ja ja Brouwser

Maaruh gewoon, ik wil deze statistieken bewaren
Dan zal je nog het een en ander moeten optimaliseren, want nu haal je nog geen 15 pagina's per seconde.
Als ik me goed herinner is foreach niet de snelste manier om door een array te lopen. Je zou ook een scriptje kunnen schrijven die de browsecap.ini file om zet naar een php inlcude file waar je alvast wat voorbereiding hebt gedaan. Je kan er dan ook voor zorgen dat de meest populaire browsers vooraan staan en de zeldzame achteraan.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  zondag 10 februari 2008 @ 21:09:43 #201
85514 ralfie
!Yvan eht nioj
pi_56651974
Met wat voorwerk kun je dat script véél efficienter maken.. Enkele voorbeelden:

*gebruik eerst array_key_search oid, grote kans dat de meeste browsers er dan al uitrollen zonder dat je die hele tabel 400 keer op en neer moet

* foreach: niet gebruiken. Foreach gebruikt een kopie van de array waar je um op zet, dus als je array om en nabij de 300 kb is en je foreach in foreach in foreach lust ben je niet slim bezig

* Verschillende keren zie je parent=naamxxxx staan. Kijk eens of je daar een numerieke verwijzing aan kan hangen, gaat veel sneller

* Splitsen van browserherkenning en info in verschillende bestanden, bijvoorbeeld met binary trees

* Erg omslachtig natuurlijk, maar databases zijn erg goed in het snel opzoeken van dit soort informatie in dit soort tabellen

etc

EDIT, oh enneh

1
2
3
4
5
6
<?php
foreach ($brows as $g => $r)
            {
                if (
$t['Parent'] == $g)
                {
?>

Wat is er mis met $brows[ $t['parent'] ] ?
pi_56652088
-

[ Bericht 94% gewijzigd door Geqxon op 10-02-2008 21:15:13 ]
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')