abonnement Unibet Coolblue Bitvavo
pi_37438708
quote:
Op zondag 30 april 2006 22:12 schreef the_disheaver het volgende:

[..]

hoeft er geen haakjes omheen?
Nee, dat komt omdat het een language construct is en niet een functie
pi_37440603
quote:
Op zondag 30 april 2006 22:06 schreef JeRa het volgende:
Het zou verrekte handig zijn als alle users hier hun eigen vragen beantwoorden oh en beerten, als je veel includes moet uitvoeren is deze functie waarschijnlijk ook wel handig
Als jullie de vraag niet beantwoorden moet je wat... Soms moet je even iets anders doen en daaarna ligt de oplossing soms zo maar voor het oprapen.

Ik zal die functie eens nader bekijken. Lijkt me erg handig!
pi_37440770
quote:
Op zondag 30 april 2006 23:04 schreef beerten het volgende:

[..]

Als jullie de vraag niet beantwoorden moet je wat...
Dat doen 'we' expres, zo leren we users aan dat ze soms ook best zelf op het antwoord kunnen komen dat, en af en toe is er wel wat beters te doen dan FOK!
pi_37457015
zit hier met een klein probleempje
ik heb een php script dat aan het begin v/h script data in een variable pompt:
1
2
3
<?php
    $data
= mysql_query($cfg['DB_main_query']) or die(mysql_error());
?>

na wat checks ga ik em verwerken:
1
2
3
4
5
6
7
8
<?php
        
while($data2 = mysql_fetch_array($data))
        {
        
$line .= "RGL,".$data2['no'].",".$data2['aantal'].",\r\n";
        
$RGL2 = $data2['line_id'].";".$data2['product_id'].";".$data2['aantal'].";".$data2['vsnno'].";".$data2['titel'].";".$data2['comments'].";\r\n";
        
fwrite($file2,$RGL2);
        }
?>

maar als ik later em nog een keer wil aan roepen ($data dus)
dan is die leeg...

is dit liogisch of mis ik wat?
pi_37457840
@mschol

Een goede start is het kiezen van logische namen voor je variabelen. 'data' en 'data2' zegt absoluut niet wat erin staat; kies dan iets meer in de richting van 'resultset' en 'row' bijvoorbeeld

Verder snap ik je vraagstelling ook niet. Wat bedoel je met 'dan is die leeg'? Zijn er geen rows meer terwijl je die verwacht? Ben je de resource identifier kwijt? Iets concreter graag

edit: oh, misschien bedoel je dat je later nóg een keer die resultset wilt raadplegen? Je kunt dan het beste de data in een array zetten en die raadplegen, of iets uitvoeren met mysql_data_seek() nadat je een keer over de resultset bent heengelopen.
pi_37458348
quote:
Op maandag 1 mei 2006 16:21 schreef JeRa het volgende:
@mschol

Een goede start is het kiezen van logische namen voor je variabelen. 'data' en 'data2' zegt absoluut niet wat erin staat; kies dan iets meer in de richting van 'resultset' en 'row' bijvoorbeeld

Verder snap ik je vraagstelling ook niet. Wat bedoel je met 'dan is die leeg'? Zijn er geen rows meer terwijl je die verwacht? Ben je de resource identifier kwijt? Iets concreter graag

edit: oh, misschien bedoel je dat je later nóg een keer die resultset wilt raadplegen? Je kunt dan het beste de data in een array zetten en die raadplegen, of iets uitvoeren met mysql_data_seek() nadat je een keer over de resultset bent heengelopen.
hmm oke
als volgt:
ik probeer $data (de resultset dus kennelijk) later dus idd nog eens te benaderen maar dan staat er niks meer in de variable $data (terwijl ik aan neem dat wanneer een variable gevuld wordt met gegrevens pas leeg wordt gemaakt als het script eindigd, of neem ik dat verkeerd aan?)


wat betreft die benaming.. ik zelf begrijp het prima maar ik snap je punt m.b.t. duidelijkheid
pi_37458467
quote:
Op maandag 1 mei 2006 16:38 schreef mschol het volgende:

[..]

hmm oke
als volgt:
ik probeer $data (de resultset dus kennelijk) later dus idd nog eens te benaderen maar dan staat er niks meer in de variable $data (terwijl ik aan neem dat wanneer een variable gevuld wordt met gegrevens pas leeg wordt gemaakt als het script eindigd, of neem ik dat verkeerd aan?)
Snap je wel wat er precies in jouw variabele $data komt te staan?

Als je een query uitvoert krijg je een resource identifier terug van PHP waarmee je de data die je terug hebt gekregen van MySQL kunt benaderen...en dus niet de data zelf doe maar eens een 'echo $data' direct na het uitvoeren van je query.

Die resource identifier houdt een pointer bij over wáár je precies in de resultset zit. Die wordt opgehoogd als je een mysql_fetch_*-aanroep doet. Als je dus een keer helemaal over de resultset bent gelopen, dan staat die pointer achteraan en dan krijg je bij volgende aanroepen dus geen data meer terug.

Dan kun je dus het beste één keer alle data in een aparte array zetten zodat je die alsnog kunt raadplegen, of die pointer resetten door middel van mysql_data_seek()
pi_37458577
quote:
Op maandag 1 mei 2006 16:43 schreef JeRa het volgende:

[..]

Snap je wel wat er precies in jouw variabele $data komt te staan?

Als je een query uitvoert krijg je een resource identifier terug van PHP waarmee je de data die je terug hebt gekregen van MySQL kunt benaderen...en dus niet de data zelf doe maar eens een 'echo $data' direct na het uitvoeren van je query.
zo ver wist ik te komen.
quote:
Die resource identifier houdt een pointer bij over wáár je precies in de resultset zit. Die wordt opgehoogd als je een mysql_fetch_*-aanroep doet. Als je dus een keer helemaal over de resultset bent gelopen, dan staat die pointer achteraan en dan krijg je bij volgende aanroepen dus geen data meer terug.

Dan kun je dus het beste één keer alle data in een aparte array zetten zodat je die alsnog kunt raadplegen, of die pointer resetten door middel van mysql_data_seek()
dit wist ik niet..
dank u
en sorry voor de brakke uitleg.. das niet een van me sterkste kanten..
pi_37463996
Ik heb een klein probleempje met queries in php.
Ik moet een XML bestand uitlezen en omzetten naar een SQL Database. Nu maak ik gebruik van een XSL bestand die queries genereert. Het probleem is echter dat de uitvoer van de xsl als één geheel wordt doorgegeven naar php.

De oplossing die ik heb resulteert in een variabele die word weggeschreven als query.php. Het probleem is echter dat dit bestand nu 16MB groot is en (sinds kort) niet geopend kan worden bij de host. (Lycos.com)

ik heb nu een paar queries achter elkaar in een $variabele die ik wegschrijf naar query.php. Hieronder een stukje uit query.php
1
2
3
4
5
6
7
mysql_query("insert into Test(Merk,Type,Hoofdgroep,Subgroep,Subsubgroep,Goingprijs,Brutoprijs,Verkoopprijs
,Nettoprijs,Leverancier,VB,Kenmerk1,Kenmerk2,Kenmerk3,Kenmerk4,Kenmerk5) values ('Etna','EEK 260 VA','Witgoed','Inbouw koelkast','170 cm en 
hoger','999.00','999.00','487.00','270.84','Atag Etna Pelgrim HomeProducts B.V.','14.29','Energieklasse: A','Netto Inhoud koelgedeelte: 176liter','Nismaat 
Hoogte: 177.5cm','Nismaat Breedte: 57cm','Nismaat Diepte: 56cm')");

mysql_query("insert into Test (Merk,Type,Hoofdgroep,Subgroep,Subsubgroep,Goingprijs,Brutoprijs,Verkoopprijs
,Nettoprijs,Leverancier,VB) values ('B&H','RHKNST4060 NGOUD','Foto en film','Overige accessoires','Lijsten','18.95','18.95','18.95','6.11','United Distributie','0.00')");


is het mogelijk om een variabele direct uit te voeren? als ik bijvoorbeeld $query neerzet gebeurt er niks. wie o wie kan mij uit de brand helpen???
pi_37464089
eval() is evil maar kan je uit de brand helpen, soms
  maandag 1 mei 2006 @ 20:15:35 #131
120967 the_jasper
Karnemelk, shaken not stirred
pi_37464693
hoi ben ik weer

mijn wk poule is bijna af, berekeningen worden uitgevoert etc
maar nu wil ik een scores lijstje maken. dus bovenaan degene met de hoogste

ik lees data uit met een loop.
Er zijn dan 2 variablen $user en $score

maar als ik wil gaan sorteren op score hoe doe ik dat dan zonder de bijbehorende username kwijt te raken of mensen met dezelfde score te overschrijven. Ik zat bij multi dimensionele arrays te kijken maar ik snap er eigenlijk niets van :S

hoe pak je zoiets aan. (alleen sorteren, de rest lukt wel)
Wat zegt hij nou.... Dat kan toch niet?
pi_37464742
quote:
Op maandag 1 mei 2006 20:15 schreef the_jasper het volgende:
hoi ben ik weer

mijn wk poule is bijna af, berekeningen worden uitgevoert etc
maar nu wil ik een scores lijstje maken. dus bovenaan degene met de hoogste

ik lees data uit met een loop.
Er zijn dan 2 variablen $user en $score

maar als ik wil gaan sorteren op score hoe doe ik dat dan zonder de bijbehorende username kwijt te raken of mensen met dezelfde score te overschrijven. Ik zat bij multi dimensionele arrays te kijken maar ik snap er eigenlijk niets van :S

hoe pak je zoiets aan. (alleen sorteren, de rest lukt wel)
Het komt niet uit een database?
  maandag 1 mei 2006 @ 20:17:44 #133
120967 the_jasper
Karnemelk, shaken not stirred
pi_37464758
quote:
Op maandag 1 mei 2006 19:58 schreef JeRa het volgende:
eval() is evil maar kan je uit de brand helpen, soms
Wel goed controleren of anders...
1
2
header('Content-Type: plain/text');
echo file_get_contents('index.php');


Wat zegt hij nou.... Dat kan toch niet?
  maandag 1 mei 2006 @ 20:18:55 #134
120967 the_jasper
Karnemelk, shaken not stirred
pi_37464812
quote:
Op maandag 1 mei 2006 20:17 schreef the_disheaver het volgende:

[..]

Het komt niet uit een database?
ja maar uit een stuk of 100 tabellen
Er is een tabel waar hij de users uitleest die aan een bepaalde voorwaarde voldoen
vervolgens leest hij hun punten kolom uit stopt die in een array en telt ze bij elkaar op
Wat zegt hij nou.... Dat kan toch niet?
pi_37465077
quote:
Op maandag 1 mei 2006 20:18 schreef the_jasper het volgende:

[..]

ja maar uit een stuk of 100 tabellen
Er is een tabel waar hij de users uitleest die aan een bepaalde voorwaarde voldoen
vervolgens leest hij hun punten kolom uit stopt die in een array en telt ze bij elkaar op
Weet je hoe JOINs werken? Die doen denk ik namelijk precies wat jij wil
pi_37465109
quote:
Op maandag 1 mei 2006 20:18 schreef the_jasper het volgende:

[..]

ja maar uit een stuk of 100 tabellen
Er is een tabel waar hij de users uitleest die aan een bepaalde voorwaarde voldoen
vervolgens leest hij hun punten kolom uit stopt die in een array en telt ze bij elkaar op
uhhh... elke user heeft een aparte tabel? oky...

Mocht je niet via SQL kunnen sorteren, kan het via http://nl3.php.net/manual/nl/function.array-multisort.php
pi_37465173
eval werkt dus ook niet

misschien ook mijn eigen schuld ik prop 23.000 mysql queries in een variabele (wat wel goed gaat) maar dan lukt het niet om de code
1eval($queries); 

uit te voeren. Iemand een andere oplossing?

update:
nou breekt mijn klomp! nu kan ik query.php ineens wél weer openen :S
de database word nu netjes gevuld
maargoed het is niet de beste oplossing dus ik sta nog steeds open voor suggesties!
pi_37465304
quote:
Op maandag 1 mei 2006 20:27 schreef the_disheaver het volgende:

[..]

uhhh... elke user heeft een aparte tabel? oky...
Als je het zo hebt geregeld moet je je toch eens ernstig afvragen of je database-opmaak in orde is, zoek bv. eens op database normalisatie met google
pi_37466925
quote:
Op maandag 1 mei 2006 20:18 schreef the_jasper het volgende:

[..]

ja maar uit een stuk of 100 tabellen
Er is een tabel waar hij de users uitleest die aan een bepaalde voorwaarde voldoen
vervolgens leest hij hun punten kolom uit stopt die in een array en telt ze bij elkaar op
Uhm, je hebt een WK-poule met 100 tabellen?

Is het mogelijk dat je heel vluchtig beschrijft hoe je database er uit ziet? Kijk anders hier eens http://www.phpfreakz.nl/library.php?sid=21860 Daar staat ook een WK-poule. Werkend en wel. Wellicht dat je er iets aan hebt?
  maandag 1 mei 2006 @ 21:26:46 #140
120967 the_jasper
Karnemelk, shaken not stirred
pi_37467233
bedankt voor de reacties

iedereen die zich aanmeld krijgt een tabel toegewezen, daar worden de 64 wedstrijden in opgeslagen zoals zij ze hebben ingevult met een paar kolommen : de wedstrijd , het land dat thuis speelt, het land dat uit speelt de uitslag de score van de thuisploeg de score van de uitploeg en het aantal punten behaalt met die wedstrijd.
dit wordt niet als tekst opgeslagen maar als getallen. Zo is bijvoorbeeld van uitslag van die wedstrijd

1 = gelijkspel
2 = eerste wint (thuis)
3 = de tweede wint (uit)

Net zoals bijvoorbeeld de landen die gewoon in een array staan en het getal overeenkomt met de plaats in de array

die punten worden berekent door de tabel te vergelijken met een mastertabel die de waardes van het wk zal bevatten

verder is er nog een user tabel met alle gegevens over de users zoals email wachtwoord etcetc maar ook of ze betaald hebben. Ik laat alleen de scores zien van de mensen die betaald hebben en toegelaten zijn (het is een poule van vrienden).

dat van die 100 user is een schatting, vorig jaar deden we het met de hand en deden 105 mensen mee. Dit jaar gaat het dus automatisch. Mss kan het beter ingedeelt worden maar het werkt nu bijna perfect en het is precies zoals wij willen en waar je punten voor krijgt.

ik doe pas mysql voor een paar dagen php een jaar, en moest altijd heel creatief zijn met tekstbestanden enzo omdat mijn host geen mysql had maar lycos heeft dat nu in het pakket zitten dat ik heb dus waarom zou ik het niet gebruiken?
quote:
Op maandag 1 mei 2006 20:31 schreef JeRa het volgende:
Als je het zo hebt geregeld moet je je toch eens ernstig afvragen of je database-opmaak in orde is, zoek bv. eens op database normalisatie met google
maar anders heb je toch 64 * 7 + alle andere kolommen in gebruikers in 1 tabel?
dit is in mijn ogen veel makkelijk, of begrijp ik het verkeerd?

[ Bericht 12% gewijzigd door the_jasper op 01-05-2006 21:36:57 ]
Wat zegt hij nou.... Dat kan toch niet?
  maandag 1 mei 2006 @ 21:41:22 #141
120967 the_jasper
Karnemelk, shaken not stirred
pi_37467716
owja als jullie nieuwsgierig zijn

ff weggemoffelt
(url is tijdelijk ff een leuke .tk zoeken)

je kan je registreren maar je ziet toch niets omdat je niet bent toegelaten tot het spel
en dus niet eens bij de invul schermen kan komen
als iemand wil kijken registert ie maar, ik zie je wel verschijnen op de admin pagina

de error op het score pagina is de fout die ik nu probeer uit te zoeken

[ Bericht 11% gewijzigd door the_jasper op 01-05-2006 22:54:55 ]
Wat zegt hij nou.... Dat kan toch niet?
pi_37467973
quote:
Op maandag 1 mei 2006 21:26 schreef the_jasper het volgende:
bedankt voor de reacties

iedereen die zich aanmeld krijgt een tabel toegewezen, daar worden de 64 wedstrijden in opgeslagen zoals zij ze hebben ingevult met een paar kolommen : de wedstrijd , het land dat thuis speelt, het land dat uit speelt de uitslag de score van de thuisploeg de score van de uitploeg en het aantal punten behaalt met die wedstrijd.
dit wordt niet als tekst opgeslagen maar als getallen. Zo is bijvoorbeeld van uitslag van die wedstrijd

1 = gelijkspel
2 = eerste wint (thuis)
3 = de tweede wint (uit)

Net zoals bijvoorbeeld de landen die gewoon in een array staan en het getal overeenkomt met de plaats in de array

die punten worden berekent door de tabel te vergelijken met een mastertabel die de waardes van het wk zal bevatten

verder is er nog een user tabel met alle gegevens over de users zoals email wachtwoord etcetc maar ook of ze betaald hebben. Ik laat alleen de scores zien van de mensen die betaald hebben en toegelaten zijn (het is een poule van vrienden).

dat van die 100 user is een schatting, vorig jaar deden we het met de hand en deden 105 mensen mee. Dit jaar gaat het dus automatisch. Mss kan het beter ingedeelt worden maar het werkt nu bijna perfect en het is precies zoals wij willen en waar je punten voor krijgt.

ik doe pas mysql voor een paar dagen php een jaar, en moest altijd heel creatief zijn met tekstbestanden enzo omdat mijn host geen mysql had maar lycos heeft dat nu in het pakket zitten dat ik heb dus waarom zou ik het niet gebruiken?
[..]

maar anders heb je toch 64 * 7 + alle andere kolommen in gebruikers in 1 tabel?
dit is in mijn ogen veel makkelijk, of begrijp ik het verkeerd?
Ja, maar dan ook echt volkomen verkeerd. Sorry...
http://www.websitemaken.be/index.php?page=show_item&id=631 Kijk hier eens.

Je stopt telkens exact dezelfde gegevens in telkens nieuwe tabellen. Je zou een verzameltabel moeten maken die alle gevens van een user in één tabel stopt.

Even heel vlug een verbeterde tabelstructuur.

Een tabel met user-informatie (naam, mailadres etc.)
Een tabel met de landen
Een tabel met voorspelling
Een tabel met die de user aan de wedstrijden koppelt. (user-idid, wedstrijd-id, voorspel-id)

Wil je nu weten wat een user heeft voorspelt voor ik noem maar iets, Nederland-Brazilië, dan zal je query er ongeveer als volgt uit zien:
Haal uit de tabel voorspellingen het record op met de user-id, waar het westrijd-id is Ned-Bra, haal uit de tabel voorspellingen de voorspelling op van user-id en wedstrijd-id

Snap je ongeveer waar ik heen wil en wat het verschil is met wat jij doet?
pi_37468179
quote:
Op maandag 1 mei 2006 21:26 schreef the_jasper het volgende:
[..]

maar anders heb je toch 64 * 7 + alle andere kolommen in gebruikers in 1 tabel?
dit is in mijn ogen veel makkelijk, of begrijp ik het verkeerd?
Nee, je hebt dan één kolom 'userid' meer die een foreign key is naar de id van de gebruiker
pi_37468247
quote:
Op maandag 1 mei 2006 21:41 schreef the_jasper het volgende:
owja als jullie nieuwsgierig zijn

http://wk.familie-gerbers.nl
(url is tijdelijk ff een leuke .tk zoeken)

je kan je registreren maar je ziet toch niets omdat je niet bent toegelaten tot het spel
en dus niet eens bij de invul schermen kan komen
als iemand wil kijken registert ie maar, ik zie je wel verschijnen op de admin pagina

de error op het score pagina is de fout die ik nu probeer uit te zoeken
Even geheel off-the-record: je beseft je hopelijk dat je bezig bent met een soort van kansspel? Het is gewoon een ordinaire pool, dit valt onder zoveel als kansspelen. Online gokken op wedstrijden. Het grootste probleem is dat je geld vraagt. De belastingdienst en jij worden geen vrienden. Je hebt dit geheel openbaar online staan. Excuses zijn er dus niet.
Je zet de poule op met vrienden. Maak je website nu zo dat alles met punten werkt. In ieder geval geen geld! Dat je buiten de website om je vrienden om een inleg vraagt en na afloop geldbedragen uitkeert hoeft de belastingdienst niet te weten. Het financiele deel zal zich toch buiten de website afspelen. Dus dit moet geen probleem zijn.
Mijns inziens begeef je je met deze openbare gok-gelegenheid, al is het een besloten kring, op zeer zeer glad ijs. Ik ben geen expert op dit gebied, integendeel. Maar maak de belastingdienst en overigen niet wijzer dan strikt noodzakelijk. Doe er je voordeel mee.
  maandag 1 mei 2006 @ 21:55:06 #145
120967 the_jasper
Karnemelk, shaken not stirred
pi_37468275
ok wist ik niet
is iig leerzaam

sorry ben een beginner maar wat is het voordeel hiervan? simpelere queries? snelheid? neem het minder ruimte in? Makkerlijker te beheren?

Zo te zien is het iig minder leesbaar in phpMyAdmin dan die van mij. Snel ergens een nummertje fixen of checken of het goede getal op de juiste plaats komt is er niet meer bij.

ow ok thanx voor de tip over kansspelen trouwens
Wat zegt hij nou.... Dat kan toch niet?
pi_37468408
quote:
Op maandag 1 mei 2006 21:55 schreef the_jasper het volgende:
ok wist ik niet
is iig leerzaam

sorry ben een beginner maar wat is het voordeel hiervan? simpelere queries? snelheid? neem het minder ruimte in? Makkerlijker te beheren?

Zo te zien is het iig minder leesbaar in phpMyAdmin dan die van mij. Snel ergens een nummertje fixen of checken of het goede getal op de juiste plaats komt is er niet meer bij.
Nee, maar dat is dan ook het enige nadeel. Je zal inderdaad, als je het goed doet, moeten kijken in phpMyAdmin welk record uit welke tabel, ofhankelijk van andere tabellen, je moet wijzigen. Maar als je je systeem goed opzet kan je dit ook met een admin-gedeelte doen.
pi_37468480
quote:
Op maandag 1 mei 2006 21:55 schreef the_jasper het volgende:
Zo te zien is het iig minder leesbaar in phpMyAdmin dan die van mij. Snel ergens een nummertje fixen of checken of het goede getal op de juiste plaats komt is er niet meer bij.
Met één extra kolom in één grote tabel kun je nog prima werken hoor. Wat dacht je van:

1
2
SELECT * FROM pool WHERE userid = 115
UPDATE pool SET blaat = 5 WHERE userid = 91 AND ...etc


Foreign keys ga je natuurlijk niet aanpassen. Dit kan wel, maar dat wordt ten zeerste afgeraden omdat je dan alles moet gaan nalopen
  maandag 1 mei 2006 @ 22:02:21 #148
120967 the_jasper
Karnemelk, shaken not stirred
pi_37468569
aaah ok bedankt
volgende keer kan ik het beter zo aanpakken inderdaad nu te laat om te gaan herschrijven
maar het is ook echt een leerproject


opgelost

[ Bericht 38% gewijzigd door the_jasper op 02-05-2006 11:41:37 ]
Wat zegt hij nou.... Dat kan toch niet?
  FOK!-Schrikkelbaas dinsdag 2 mei 2006 @ 09:38:09 #149
1972 Swetsenegger
Egocentrische Narcist
pi_37479019
quote:
Op maandag 1 mei 2006 22:02 schreef the_jasper het volgende:
aaah ok bedankt
volgende keer kan ik het beter zo aanpakken inderdaad nu te laat om te gaan herschrijven
maar het is ook echt een leerproject

Het is nooit te laat om te herschrijven.
  dinsdag 2 mei 2006 @ 11:42:02 #150
120967 the_jasper
Karnemelk, shaken not stirred
pi_37482338
wel als in 16 dagen je examen begint
Wat zegt hij nou.... Dat kan toch niet?
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')