abonnement Unibet Coolblue Bitvavo
pi_45336717
quote:
Op zondag 14 januari 2007 10:39 schreef qu63 het volgende:

[ code verwijderd ]

hoe kan ik deze query nou goed laten gaan?

$id t/m $bedrag moeten meerdere waarden krijgen (een array dus) en die moeten allemaal de database in. Er komen geen nieuwe rijen bij, het wordt dus alleen maar geupdate.

ik keek al bij Multiple Queries op dev.mysql.com maar ik weet niet of dat allemaal goed werkt enzo..

iemand tips?
Waarom niet gewoon een loop schrijven die per array-regel een volledige query uitvoert? En waarom gebruik je daarvoor de update query en niet de insert query?
  zondag 14 januari 2007 @ 10:45:32 #177
62215 qu63
..de tijd drinkt..
pi_45336747
quote:
Op zondag 14 januari 2007 10:43 schreef zwambtenaar het volgende:

[..]

Waarom niet gewoon een loop schrijven die per array-regel een volledige query uitvoert?
mij leek een enkele query makkelijker om uit te voeren, maar dat was idd mijn optie als dit niet werkte
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  zondag 14 januari 2007 @ 10:49:37 #178
62215 qu63
..de tijd drinkt..
pi_45336799
quote:
Op zondag 14 januari 2007 10:43 schreef zwambtenaar het volgende:

[..]

Waarom niet gewoon een loop schrijven die per array-regel een volledige query uitvoert? En waarom gebruik je daarvoor de update query en niet de insert query?
ik haal de waarden uit mn database, daar bouw ik een mooi update-formulier omheen. Dit formulier kan dus ge-submit worden en de nieuwe waarden moeten weer de database in
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_45336812
quote:
Op zondag 14 januari 2007 10:49 schreef qu63 het volgende:

[..]

ik haal de waarden uit mn database, daar bouw ik een mooi update-formulier omheen. Dit formulier kan dus ge-submit worden en de nieuwe waarden moeten weer de database in
Ik begrijp het inderdaad. Als een soort tabel-/spreadsheetoverview waarmee je in één keer vele records kunt editten.
  zondag 14 januari 2007 @ 10:51:45 #180
62215 qu63
..de tijd drinkt..
pi_45336828
quote:
Op zondag 14 januari 2007 10:50 schreef zwambtenaar het volgende:

[..]

Ik begrijp het inderdaad. Als een soort tabel-/spreadsheetoverview waarmee je in één keer vele records kunt editten.
juistem
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_45338860
quote:
Op zondag 14 januari 2007 10:39 schreef qu63 het volgende:

[ code verwijderd ]

hoe kan ik deze query nou goed laten gaan?
[...]
iemand tips?
Volgens mij doe je de eerste regel (met index 0) nu dubbel.

Bij een INSERT mag je in MySQL meerdere rows opgeven, maar kan hetzelfde ook met UPDATE? Ik denk dat je wat dingen door elkaar haalt. De MySQL INSERT syntax accepteert behalve de standaard insert syntax ook een update-achtige syntax. Maar een UPDATE accepteert niet de insert syntax.

[ Bericht 13% gewijzigd door SuperRembo op 14-01-2007 12:35:40 ]
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  zondag 14 januari 2007 @ 12:35:54 #182
62215 qu63
..de tijd drinkt..
pi_45339017
quote:
Op zondag 14 januari 2007 12:27 schreef SuperRembo het volgende:

[..]

Volgens mij doe je de eerste regel (met index 0) nu dubbel.
ohja 8)7

helaas werkt het nu nog niet..

volgens mij komt het omdat ik dubbele "name's" heb ofzo :{
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
<form action="/order.php" method="post">
<table width="50%"  border="0" cellspacing="0" cellpadding="0">
<tr> 
<td>Datum</td>
<td>Naam</td>
<td>Offertenummer</td>
<td>Ordernummer</td>
<td>Order</td>
<td>Bedrag</td>
</tr>
<tr><input type="hidden" name="id" value="1">
<td>vandaag</td>
<td>Ik</td>
<td><input name="offertenummer" value="" size="10"></td>
<td><input name="ordernummer" value="" size="10"></td>
<td><input name="order" value="ja" size="10">ja/nee</td>
<td>¤<input name="bedrag" value="352,79" size="10"></td>
</tr>

<tr><input type="hidden" name="id" value="2">
<td>5</td>
<td>5</td>
<td><input name="offertenummer" value="" size="10"></td>
<td><input name="ordernummer" value="5" size="10"></td>
<td><input name="order" value="5" size="10">ja/nee</td>
<td>¤<input name="bedrag" value="5" size="10"></td>
</tr>

</table>
<input type="submit" name="submit" value="submit">
</form>
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_45339241
Dan moet je van die input names een array maken.

1
2
3
<input type="text" name="offertenummer[]" value="" size="10">
<input type="text" name="offertenummer[]" value="" size="10">
<input type="text" name="offertenummer[]" value="" size="10">


1
2
3
4
5
6
7
<?php
$offertenummer
= $_POST["offertenummer"];

echo
$offertenummer[0];
echo
$offertenummer[1];
echo
$offertenummer[2];
?>


Let op dat een array bij 0 begint met tellen en jij je ID's bij 1 laat beginnen.
  zondag 14 januari 2007 @ 12:45:05 #184
62215 qu63
..de tijd drinkt..
pi_45339268
quote:
Op zondag 14 januari 2007 12:44 schreef HuHu het volgende:
Dan moet je van die input names een array maken.


[ code verwijderd ]


[ code verwijderd ]

Let op dat een array bij 0 begint met tellen en jij je ID's bij 1 laat beginnen.
dat komt omdat ik er al een id uit heb geknikkerd
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_45339351
quote:
Op zondag 14 januari 2007 12:45 schreef qu63 het volgende:

[..]

dat komt omdat ik er al een id uit heb geknikkerd
Aha... .

Maar in 1 query meerdere rijen updaten gaat niet lukken. Dan moet je een UPDATE in een loopje doen.

Of eerst alle rijen verwijderen met 1 query en daarna weer invoegen met 1 query.
  zondag 14 januari 2007 @ 12:49:00 #186
62215 qu63
..de tijd drinkt..
pi_45339373
stukje code wat ik een keer van Light heb gehad:
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
<?php
//dit poept dus alle waarden in een tabelletje..
while ($row = mysql_fetch_assoc($result)) {
        echo
"<tr>n<td>".$row['tijd']."</td>n";
        echo
"<td>".$row['km']."</td>n";
        echo
"<td>n<input type="text" name="prijs[".$row['tijd']."][".$row['km']."]" value="".$row['prijs']."">n";
        echo
"<input type="hidden" name=oud[".$row['tijd'].']['.$row['km']."] value="".$row['prijs']."">n</td>n</tr>n";
    }
//en dit is de update functie. de rest vavn het script heb ik achterwege gelaten omdat dat alleen maar checks zijn of er iets anders gedaan moet worden..
function update() {
    
//nieuwe waarden?
        
$km = $_POST['km_nieuw'];
        
$prijs = $_POST['prijs_nieuw'];
        
$tijd = $_POST['tijd_nieuw'];
        if (
is_array($km) && is_array($prijs) && is_array($tijd)
            && (
count($km) == count($prijs)) && (count($km) == count($tijd))) {
                    
$query = 'INSERT INTO qu63 (tijd, km, prijs)
                    VALUES ('
. $tijd[0] . ', ' . $km[0] . ', ' . $prijs[0] . ')';
            
$num = count($km);
            for (
$i = 0; $i < $num; $i++) {
                
$query .= ',(' . $tijd[$i] . ', ' . $km[$i] . ', ' . $prijs[$i] . ')';
                   }
            
mysql_query($query);
        }
        
//if(($_POST['km_nieuw'] > 0) && ($_POST['tijd_nieuw'] > 0) && ($_POST['prijs_nieuw'] > 0)) {
                //mysql_query('INSERT INTO qu63 (prijs, tijd, km) VALUES ('.$_POST['prijs_nieuw'].','.$_POST['tijd_nieuw'].','.$_POST['km_nieuw'].'),('.$_POST['prijs_nieuw'].','.$_POST['tijd_nieuw'].','.$_POST['km_nieuw'].'),('.$_POST['prijs_nieuw'].','.$_POST['tijd_nieuw'].','.$_POST['km_nieuw'].'),('.$_POST['prijs_nieuw'].','.$_POST['tijd_nieuw'].','.$_POST['km_nieuw'].'),('.$_POST['prijs_nieuw'].','.$_POST['tijd_nieuw'].','.$_POST['km_nieuw'].')');
                //mysql_query('INSERT INTO qu63 (prijs, tijd, km) VALUES ('.intval($_POST['prijs'][$tijd][$km]).','.$tijd.','.$km.')');
                //$aangepast++;
                //}
    //Bij het begin beginnen :)
    
reset($_POST['oud']);
    
//De array bevat tijd, afstand en prijs.
    //Dat is niet in 1 lus uit te lezen, dus doen we het met twee.
    
while (list($tijd, $tmp) = each($_POST['oud'])) {
        while (list(
$km, $prijs) = each($tmp)) {
            
//Als er een andere prijs staat dan zetten we die in de database
            
if($_POST['prijs'][$tijd][$km] != $prijs) {
                
mysql_query('UPDATE qu63 SET prijs = '.intval($_POST['prijs'][$tijd][$km]).' WHERE tijd = '.$tijd.' AND km = '.$km);
                
$aangepast++;
            }
        }
    }
}
?>


daarin werkt het wel..
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  zondag 14 januari 2007 @ 13:00:04 #187
62215 qu63
..de tijd drinkt..
pi_45339753
quote:
Op zondag 14 januari 2007 12:44 schreef HuHu het volgende:
Dan moet je van die input names een array maken.
dat werkt iig ja..

dan gaan we daarmee verder klooien
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  zondag 14 januari 2007 @ 15:09:56 #188
62215 qu63
..de tijd drinkt..
pi_45343473
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
mysql_connect
(DB_HOST, DB_USER, DB_PASS);
mysql_select_db(DB_DATABASE);
$id = $_POST['ID'];
$datum = $_POST['datum'];
$naam = $_POST['naam'];
$offertenummer = $_POST['offertenummer'];
$ordernummer = $_POST['ordernummer'];
$order = $_POST['order'];
$bedrag = $_POST['bedrag'];
$nieuw = array($id,$datum,$naam,$offertenummer,$ordernummer,$order,$bedrag);
//print_r($nieuw);
//echo $nieuw[3][1];
if (is_array($nieuw) && (count($nieuw)))
{
            
$num = count($nieuw);
            for (
$i = 0; $i < $num; $i++) {
//            foreach($id as $k => $w) {
                
mysql_query("REPLACE 'order' ('ID', 'datum', 'naam', 'offertenummer', 'ordernummer', 'order', 'bedrag') VALUES('" . $nieuw[0][$i] . "', '" . $nieuw[1][$i] . "', '" . $nieuw[2][$i] . "', '" . $nieuw[3][$i] . "', '" . $nieuw[4][$i] . "', '" . $nieuw[5][$i] . "', '" . $nieuw[6][$i] . "')");
                   }
            }
?>

op zich werkt alles, alleen volgens mij klopt er iets niet in mn sql_query..

ziet iemand de fout?

regel 12 poept dit uit:
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
Array
(
    [0] => Array
        (
            [1] => 1
            [2] => 2
            [3] => 3
        )

    [1] => Array
        (
            [vandaag] => vandaag
            [5] => 5
            [123] => 123
        )

    [2] => Array
        (
            [1] => Ik
            [2] => 5
            [3] => 123
        )

    [3] => Array
        (
            [1] => 
            [2] => 
            [3] => 12
        )

    [4] => Array
        (
            [1] => 
            [2] => 5
            [3] => 789
        )

    [5] => Array
        (
            [1] => ja
            [2] => 5
            [3] => 55
        )

    [6] => Array
        (
            [1] => 352,79
            [2] => 5
            [3] => 333
        )

)

html-code:
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
<form action="/order.php" method="post">
<table width="50%"  border="0" cellspacing="0" cellpadding="0">
  <tr> 
    <td>Datum</td>
    <td>Naam</td>

   <td>Offertenummer</td>
   <td>Ordernummer</td>
    <td>Order</td>
    <td>Bedrag</td>
  </tr>
<tr><input type="hidden" name="ID[1]" value="1">
<td><input type="hidden" name="datum[vandaag]" value="vandaag">vandaag</td>

<td><input type="hidden" name="naam[1]" value="Ik">Ik</td>
<td><input name="offertenummer[1]" value="" size="10"></td>
<td><input name="ordernummer[1]" value="" size="10"></td>
<td><input name="order[1]" value="ja" size="10">ja/nee</td>
<td>€<input name="bedrag[1]" value="352,79" size="10"></td>
</tr>
<tr><input type="hidden" name="ID[2]" value="2">
<td><input type="hidden" name="datum[5]" value="5">5</td>
<td><input type="hidden" name="naam[2]" value="5">5</td>
<td><input name="offertenummer[2]" value="" size="10"></td>
<td><input name="ordernummer[2]" value="5" size="10"></td>
<td><input name="order[2]" value="5" size="10">ja/nee</td>

<td>€<input name="bedrag[2]" value="5" size="10"></td>
</tr>
<tr><input type="hidden" name="ID[3]" value="3">
<td><input type="hidden" name="datum[123]" value="123">123</td>
<td><input type="hidden" name="naam[3]" value="123">123</td>
<td><input name="offertenummer[3]" value="12" size="10"></td>
<td><input name="ordernummer[3]" value="789" size="10"></td>
<td><input name="order[3]" value="55" size="10">ja/nee</td>
<td>€<input name="bedrag[3]" value="333" size="10"></td>
</tr>

</table>
<input type="submit" name="submit" value="submit">
</form>
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  zondag 14 januari 2007 @ 15:58:03 #189
62215 qu63
..de tijd drinkt..
pi_45345062
gefixed!

thanx SuperRembo!
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_45356526
Ik heb een datum opgeslagen in de database , nu wil ik zeg maar een overzicht maken van alle gegevens met die datum ouder als een jaar

Dus ik sla het zo op: 2007-01-14 en ik wil zeg maar alle data na 2008-01-14 in een overzicht hebben.
Is dit mogelijk?
pi_45356979
quote:
Op zondag 14 januari 2007 21:14 schreef broodmonkeh het volgende:
Ik heb een datum opgeslagen in de database , nu wil ik zeg maar een overzicht maken van alle gegevens met die datum ouder als een jaar

Dus ik sla het zo op: 2007-01-14 en ik wil zeg maar alle data na 2008-01-14 in een overzicht hebben.
Is dit mogelijk?
Ja natuurlijk is dit mogelijk .
Heb je je data als now() opgeslaan? Dan is het heel wat handiger dan als je het er letterlijk 2007-01-14 inzet...

Je moet maar eens zoeken mbv het INTERVAL-statement in MySQL hoe je data er zo het best gaat uithalen. (Ik geef niet de code omdat je er anders niets van leert )
pi_45358381
quote:
Op zondag 14 januari 2007 21:24 schreef fate het volgende:

[..]

Ja natuurlijk is dit mogelijk .
Heb je je data als now() opgeslaan? Dan is het heel wat handiger dan als je het er letterlijk 2007-01-14 inzet...

Je moet maar eens zoeken mbv het INTERVAL-statement in MySQL hoe je data er zo het best gaat uithalen. (Ik geef niet de code omdat je er anders niets van leert )
met NOW() komt er ook 2007-01-14 uit , dus maakt opzich niet zoveel uit toch? Dat INTERVAL-statement ga ik nu even uitzoeken.
  FOK!-Schrikkelbaas zondag 14 januari 2007 @ 22:47:59 #193
1972 Swetsenegger
Egocentrische Narcist
pi_45358405
Als je datum in een DATE of DATETIME veld staat zoals het hoort, kan je dat heel makkelijk doen met

1
2
3
<?php
SELECT
* FROM table WHERE datum<=DATE_SUB(NOW(), INTERVAL 1 YEAR)
?>
  FOK!-Schrikkelbaas zondag 14 januari 2007 @ 22:48:54 #194
1972 Swetsenegger
Egocentrische Narcist
pi_45358446
quote:
Op zondag 14 januari 2007 22:47 schreef broodmonkeh het volgende:

[..]

met NOW() komt er ook 2007-01-14 uit , dus maakt opzich niet zoveel uit toch?
Jawel, want op DATE en DATETIME velden kan je sql datum en tijd functies gebruiken. op een varchar veld niet.
pi_45358659
quote:
Op zondag 14 januari 2007 22:48 schreef Swetsenegger het volgende:

[..]

Jawel, want op DATE en DATETIME velden kan je sql datum en tijd functies gebruiken. op een varchar veld niet.
ik had hem al als DATE veld , gebruikte alleen geen NOW() maar ik had de datum al bepaald met date() en dat in de database gezet.
  FOK!-Schrikkelbaas zondag 14 januari 2007 @ 22:59:33 #196
1972 Swetsenegger
Egocentrische Narcist
pi_45358789
quote:
Op zondag 14 januari 2007 22:55 schreef broodmonkeh het volgende:

[..]

ik had hem al als DATE veld , gebruikte alleen geen NOW() maar ik had de datum al bepaald met date() en dat in de database gezet.
Als het maar een DATE veld is. Dan lijkt je methode me nog steeds nodeloos ingewikkeld, mits je een andere datum dan *nu* in de database wil hebben.
pi_45358858
quote:
Op zondag 14 januari 2007 22:59 schreef Swetsenegger het volgende:

[..]

Als het maar een DATE veld is. Dan lijkt je methode me nog steeds nodeloos ingewikkeld, mits je een andere datum dan *nu* in de database wil hebben.
jep dat is ook het geval
pi_45359424
maar iig bedankt voor de code , works like a charm !
pi_45360006
Ik probeerde in eerste instantie mbv javascript een cookie te verwijderen, maar dit werkt niet zo te zien. de situatie is als volgt:

ik heb een domein waarop de meeste mensen binnenkomen via de index.html op deze pagina wordt een cookie gezet. als de user verder browsed naar een van de andere sites bijv. subdomein.hoofdomein.com dan moet de cookie die eerder op de mainpage gezet is verwijderd worden,
ik probeer dit nu wel met javascript te doen, omdat ik geen PHP ondersteuning heb ik op deze server, misschien dat ik dit er nog bij ga nemen..

ik kwam uit op deze javascript code, welke de cookie expiration time in het verleden zou moeten zetten en daardoor automatisch verwijdert.

De cookie blijft wel staan dus ik doe iets fout..

hopen maar dat iemand me anders wel kan helpen met PHP code hiervoor.

dit is de javascript code iedergeval

1
2
3
4
5
6
7
8
<script type="text/javascript">
function delete_cookie ( cookienaam )
{
  var cookie_date = new Date ( );  // current date & time
  cookie_date.setTime ( cookie_date.getTime() - 1 );
  document.cookie = cookienaam += "=; expires=" + cookie_date.toGMTString();
}
</script>
  zondag 14 januari 2007 @ 23:42:47 #200
46383 Tiemie
sowieso wel!
pi_45360156
quote:
Op zondag 14 januari 2007 23:38 schreef profielnaam het volgende:
Ik probeerde in eerste instantie mbv javascript een cookie te verwijderen, maar dit werkt niet zo te zien. de situatie is als volgt:

ik heb een domein waarop de meeste mensen binnenkomen via de index.html op deze pagina wordt een cookie gezet. als de user verder browsed naar een van de andere sites bijv. subdomein.hoofdomein.com dan moet de cookie die eerder op de mainpage gezet is verwijderd worden,
ik probeer dit nu wel met javascript te doen, omdat ik geen PHP ondersteuning heb ik op deze server, misschien dat ik dit er nog bij ga nemen..

ik kwam uit op deze javascript code, welke de cookie expiration time in het verleden zou moeten zetten en daardoor automatisch verwijdert.

De cookie blijft wel staan dus ik doe iets fout..

hopen maar dat iemand me anders wel kan helpen met PHP code hiervoor.

dit is de javascript code iedergeval
[ code verwijderd ]
http://www.sitemasters.be/?pagina=tutorials/tutorials&cat=4&id=160
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')