Pakt maar 1 id

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jerry php

Jerry php

03/10/2012 22:28:21
Quote Anchor link
Beste mensen,

ik maak op dit moment een bieding script, maar er gaat iets mis.

als ik een aantal biedingen heb staan, wil ik bijvoorbeeld bieden op de 1e vakantie, maar hij geeft dan altijd weer dat het bod hoger moet zijn als het bestaande bod, maar dat is hij dan wel..

als ik de 2e vakantie wil bieden, doet hij het wel? Waar ligt dit aan?
Hier mijn code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
include 'config.php';

if(isset($_POST['submit']))
{

    $id = $_POST['id'];
    $qu = "SELECT * FROM veiling WHERE veiling_id=$id";
    $res = mysql_query($qu) or die (mysql_error());
    
    while($ro = mysql_fetch_assoc($res))
    {

        $oudBod = $ro['bod'];
    }

    $bod = $_POST['bod'];
    
    if($bod <= $oudBod)
    {

        echo "Het bod moet hoger zijn als het bestaande bod.";
    }

    
    else
    {
        $q = "UPDATE veiling
              SET bod=$bod
              WHERE veiling_id=$id"
;
        $r = mysql_query($q) or die (mysql_error());

        echo "Uw bod is toegevoegd.";
    }
    
}


else
{
    $query = "SELECT * FROM veiling";
    $result = mysql_query($query) or die (mysql_error());

    echo "<table>";
        echo "<form method='post' action='veiling.php'>";
            while($row = mysql_fetch_assoc($result))
            {

                echo "<tr><td><input type='hidden' name='id' value='".$row['veiling_id']."'/></td></tr>";
                echo "<tr><td>Naam: <b>".$row['naam']."</b></td><td>Huidige bod:</td></tr>";
                echo "<tr><td>Locatie: <b>".$row['locatie']."</b></td><td><u><b>€ ".$row['bod'].",-</b></u></td></tr>";
                echo "<tr><td>Overige informatie:</td><td>Uw bod: <input type='text' name='bod' style='width:50px;'/></td><td><input type='submit' name='submit' value='Bied'</td></tr>";
                echo "<tr><td><textarea style='width:380; height:100px; margin-top:10px;'>".$row['informatie']."</textarea></td></tr>";
                echo "<tr><td></td></tr><tr><td></td></tr><tr><td></td></tr><tr><td></td></tr><tr><td></td></tr>";
            }

        echo "</form>";
    echo "</table>";
}

?>


Toevoeging op 03/10/2012 22:36:08:

als ik btw bij de 1e vakantie bied krijg ik dit in de url (heb bij mij even op get gezet):
http://localhost/veiling/veiling.php?id=10&bod=20&submit=Bied&id=11&bod=


en bij de 2e vakantie (die wel werkt) krijg ik dit:
http://localhost/veiling/veiling.php?id=10&bod=&id=11&bod=100&submit=Bied

Maar waar komen al die 'bod' vandaan etc?
 
PHP hulp

PHP hulp

29/03/2024 00:08:52
 
- SanThe -

- SanThe -

03/10/2012 22:44:06
Quote Anchor link
Er zijn meerdere rows in de database dus zal het formulier ook meerdere id's en dergelijke hebben. Maak daar een array() van.
Gewijzigd op 03/10/2012 22:45:05 door - SanThe -
 
Jerry php

Jerry php

03/10/2012 22:45:35
Quote Anchor link
Wat kan ik hier aan veranderen zodat hij wel werkt?

Toevoeging op 03/10/2012 22:46:09:

Edit: Van welke moet ik een array maken? want $row is toch juist een array, en dan haal ik het met $row['naam']; etc op

Toevoeging op 03/10/2012 22:59:36:

Als ik mijn query $qu echo, krijg ik in alle tijden het id van de 2e vakantie..
 
Remco schrubben

remco schrubben

03/10/2012 23:25:39
Quote Anchor link
Kijk eens naar je 2 urls die je krijgt.

De 2 url's zijn niet gelijk aan elkaar.
 
Jerry php

Jerry php

04/10/2012 13:05:38
Quote Anchor link
Nee klopt, maar hoe krijg ik daar verandering in? ik kan het niet vinden hoe het komt..
 
- Ariën  -
Beheerder

- Ariën -

04/10/2012 13:08:34
Quote Anchor link
Er gaat heel veel mis:

- De foutafhandeling aller eerste. die() is niet de juiste manier of op queries te controleren
- Variabelen buiten quotes in je query's. Zorg dat de waarde ook tussen single-quotes staat.
- Er is SQL injection mogelijk.
- Je controleert verkeerd of een formulier is verstuurd. Die doe je door te kijken maar $_SERVER['REQUEST_METHOD']=="POST"
 
Jerry php

Jerry php

04/10/2012 13:12:51
Quote Anchor link
Oke klopt, maar na verandering heeft het alsnog niets verandert aan mijn fout

Toevoeging op 04/10/2012 13:40:51:

Wat kan de oplossing zijn?
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.