1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <?php foreach ($_POST['WThuisploeg'] as $key=>$WThuisploeg) { } foreach ($_POST['WUitploeg'] as $key=>$WUitploeg) { } foreach ($_POST['ScoreThuis'] as $key=>$ScoreThuis) { } foreach ($_POST['ScoreUit'] as $key=>$ScoreUit) { } $sql1 = ("UPDATE Wedstrijden SET WScoreThuis='".$ScoreThuis."', WScoreUit='".$ScoreUit."' WHERE WThuisploeg='".$WThuisploeg."' AND WUitploeg='".$WUitploeg."' "); $invoer = mysql_query($sql1) or die (mysql_error()); ?> |
Omdat je foreach leeg is en je query dus in de foreach moet. Nu loopt hij door de array heen, doet niks, en gebruikt na de hele loop de laatste waarden uit de array voor een enkele update.quote:Op woensdag 20 april 2011 16:44 schreef Feyenoordlife het volgende:
[ code verwijderd ]
Waarom wordt nu alleen de laatste rij in mijn database geüpdate? Als ik de array uitlees klopt alles wel gewoon.
Wat is er met die rare indenting van je sluitende brackets? Op dit moment sluiten je foreaches voor ze uberhaupt iets hebben gedaan. Ik snap niet helemaal wat je bedoeling is.quote:Op woensdag 20 april 2011 16:44 schreef Feyenoordlife het volgende:
[ code verwijderd ]
Waarom wordt nu alleen de laatste rij in mijn database geüpdate? Als ik de array uitlees klopt alles wel gewoon.
De $_POST vars zijn inderdaad arrays. En de inspringing zal ik even opnieuw doen, wordt het iets overzichtelijker.quote:Op woensdag 20 april 2011 16:49 schreef Luchtkoker het volgende:
[..]
Wat is er met die rare indenting van je sluitende brackets? Op dit moment sluiten je foreaches voor ze uberhaupt iets hebben gedaan. Ik snap niet helemaal wat je bedoeling is.
-edit ah ik snap het al. Je probeert je POST vars door te loopen in die foreaches te initialiseren in vars, en dan die query elke keer uit te voeren? Dan moet je inderdaad zoals de poster boven mij zegt je query in de for-loop zetten. Op dit moment loopt hij door alles, en zodra hij dus de loops uit komt staan $WThuisploeg, $WUitploeg etc allemaal op hun laatste waarden geintializeerd (vlak voordat ze de loop uit gingen dus).
Als je het voor elke combo wilt moet je ze niet sequentieel plaatsen, maar genest.
-edit2- Sowieso, zijn die $_POST vars arrays?
Zolang je geen associaties hebt in je array tussen welke scores bij welke ploegen horen houd je dat probleem.quote:Op woensdag 20 april 2011 16:55 schreef Feyenoordlife het volgende:
[..]
De $_POST vars zijn inderdaad arrays. En de inspringing zal ik even opnieuw doen, wordt het iets overzichtelijker.
Wat ik op dit moment gedaan heb is de sluit-accolades onder de query gezet, en dit levert als resultaat op dat de laatst ingevulde uitslag in elke rij komt te staan.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <?php foreach ($_POST['WThuisploeg'] as $key=>$WThuisploeg) { foreach ($_POST['WUitploeg'] as $key=>$WUitploeg) { foreach ($_POST['ScoreThuis'] as $key=>$ScoreThuis) { foreach ($_POST['ScoreUit'] as $key=>$ScoreUit) { $sql1 = ("UPDATE Wedstrijden SET WScoreThuis='".$ScoreThuis."', WScoreUit='".$ScoreUit."' WHERE WThuisploeg='".$WThuisploeg."' AND WUitploeg='".$WUitploeg."' "); $invoer = mysql_query($sql1) or die (mysql_error()); } } } } ?> |
Dat gedeelte had ik ondertussen ja. Nu moet ik er dan volgens mij nog een associatieve array van maken.quote:Op woensdag 20 april 2011 17:05 schreef lifeblind het volgende:
volgens mij kom je al een heel stuk verder als je dit probeert:
[ code verwijderd ]
Helaas, ik moet de plaatjes behouden als PNG! maar hoopte dat er een oplossing was om er toch een beetje compressie overheen te gooien, zoals photoshop en andere paketten ook doen!quote:Op dinsdag 19 april 2011 23:35 schreef GlowMouse het volgende:
png is geen lossy compressie; ik zou kijken naar http://nl.php.net/manual/en/function.imagick-setimageformat.php
Eensch, maak 2 classes aan in CSS en geef ze beiden een andere achtergrondkleur. Weet niet waar je mee werkt, maar ik zou in je loop een counter doen die gewoon elke keer optelt. Maak een variabele $i = 0; en na elke loop doe je $i++; Vervolgens kijk je in de regel of het getal even is of oneven (% modulo operator) en aan de hand daarvan geef je de juiste class mee aan je div/tabel/whatever...quote:Op woensdag 20 april 2011 22:01 schreef Light het volgende:
Geef ze in PHP om en om een class mee, en style die vervolgens in css met verschillende (achtergrond)kleuren.
Het is trouwens ook volledig in css uit te werken, bedenk ik me. Dan heb je in php helemaal niets nodig met extra classes. Alleen jammer dat de css-uitwerking niet in alle browsers (lees: IE) werkt.quote:Op woensdag 20 april 2011 22:38 schreef mafkees01 het volgende:
[..]
Eensch, maak 2 classes aan in CSS en geef ze beiden een andere achtergrondkleur. Weet niet waar je mee werkt, maar ik zou in je loop een counter doen die gewoon elke keer optelt. Maak een variabele $i = 0; en na elke loop doe je $i++; Vervolgens kijk je in de regel of het getal even is of oneven (% modulo operator) en aan de hand daarvan geef je de juiste class mee aan je div/tabel/whatever...
1 2 3 4 5 6 | tr:nth-child(2n+1) { background-color: blue; } tr:nth-child(2n) { background-color: red; } |
Is dat CSS3 ofzo? Ik ken het namelijk helemaal niet (niet dat ik zó'n CSS expert ben )quote:Op woensdag 20 april 2011 22:46 schreef Light het volgende:
[..]
Het is trouwens ook volledig in css uit te werken, bedenk ik me. Dan heb je in php helemaal niets nodig met extra classes. Alleen jammer dat de css-uitwerking niet in alle browsers (lees: IE) werkt.
Voorbeeld:
[ code verwijderd ]
In plaats van 2n+1 mag je ook odd schrijven, en in plaats van 2n mag je ook even schrijven. Maar da's meer iets voor in het css-topic.
quote:One saving grace here is that if you are using jQuery, which supports all CSS selector including :nth-child, the selector will work, even in Internet Explorer.
Dat is CSS3, ja. Leuk speelgoed ookquote:Op woensdag 20 april 2011 23:51 schreef Luchtkoker het volgende:
[..]
Is dat CSS3 ofzo? Ik ken het namelijk helemaal niet (niet dat ik zó'n CSS expert ben )
Graceful degradation. Styles moet je toewijzen met CSS, niet met PHP. Werkt het niet, dan maar met een javascript-achtige fallback. Sowieso voegen dat soort operaties nou niet bepaald extreem veel overhead toe, zeker niet als je jQuery uberhaupt al actief hebt.quote:Op donderdag 21 april 2011 00:14 schreef GlowMouse het volgende:
Ja, achteraf met JS wat classes toevoegen. Zullen die oude browsers blij van worden. Ga nou geen oplossing aandragen voor een probleem dat er niet is.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |