Toon posts:

PHP 7.2 - database query, waarde aanpassen en wegschrijven

Pagina: 1
Acties:

Vraag


  • X-DraGoN
  • Registratie: Juli 2005
  • Laatst online: 16:57
Even voor de duidelijkheid, ik heb geen ervaring met PHP schrijven, noch met andere programmatie
Ik draai een Debian server met apache2 en PHP en mysql.
Ik heb een kleine database die ik wil queryen.

Ik heb een waarde in de database zitten, deze wil ik er uit halen en op de website laten zien. Als er dan op een knop gedrukt wordt 'ok', moet die waarde met 1 verlaagd worden.

Ik heb momenteel een zoekpagina waar ik dit op zou willen zetten:
De value die ik wil aanpassen zit in "leden_beurten_left"

Ik heb de juiste data reeds in "$value" zitten nadat ik een search gedaan heb, vermoed ik, maar hoe verminder ik die nu met 1 en schrijf ik die data dan weer weg in de database?
PHP:
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
<?php
include 'connect_test_db.php';
$searchErr = '';
$employee_details='';
if(isset($_POST['save']))
{
        if(!empty($_POST['search']))
        {
                $search = $_POST['search'];
                $stmt = $con->prepare("select * from leden_tbl where leden_naam like '%$search%'");
                $stmt->execute();
                $employee_details = $stmt->fetchAll(PDO::FETCH_ASSOC);
                //print_r($employee_details);

        }
        else
        {
                $searchErr = "Please enter the information";
        }

}

?>
<html>
<head>
<title>ajax example</title>
<link rel="stylesheet" href="bootstrap.css" crossorigin="anonymous">
<button type="button" onclick="history.back();">Back</button>
<!-- Optional theme -->
<link rel="stylesheet" href="bootstrap-theme.css" crossorigin="anonymous">
<style>
.container{
        width:70%;
        height:30%;
        padding:20px;
}
</style>
</head>

<body>
        <div class="container">
        <h3><u>Doorzoek leden lijst</u></h3>
        <br/><br/>
        <form class="form-horizontal" action="#" method="post">
        <div class="row">
                <div class="form-group">
                    <label class="control-label col-sm-4" for="email"><b>Doorzoek Leden Lijst:</b></label>
                    <div class="col-sm-4">
                      <input type="text" class="form-control" name="search" placeholder="Zoek hier">
                    </div>
                    <div class="col-sm-2">
                      <button type="Stuur door" name="save" class="btn btn-success btn-sm">Submit</button>
                    </div>
                </div>
                <div class="form-group">
                        <span class="error" style="color:red;">* <?php echo $searchErr;?></span>
                </div>
    </form>
        <br/><br/>
        <h3><u>Search Result</u></h3><br/>
        <div class="table-responsive">
          <table class="table">
            <thead>
              <tr>
                <th>#</th>
                <th>Naam</th>
                <th>Beurten</th>
              </tr>
            </thead>
            <tbody>
                        <?php
                         if(!$employee_details)
                         {
                                echo '<tr>No data found</tr>';
                         }
                         else{
                                foreach($employee_details as $key=>$value)
                                {
                                        ?>
                                <tr>
                                        <td><?php echo $key+1;?></td>
                                        <td><?php echo $value['leden_naam'];?></td>
                                        <td><?php echo $value['leden_beurten_left'];?></td>
                                        </tr>
                                        <?php
                                }
                         }
                        ?>

             </tbody>
          </table>
        </div>
</div>
<p></p>
<p></p>
<p></p>
<br/>
<h3> 1 beurt aftrekken van <?php echo $value['leden_beurten_left'];?><h3>
?>


<script src="jquery-3.2.1.min.js"></script>
<script src="bootstrap.min.js"></script>
</body>
</html>

Beste antwoord (via X-DraGoN op 07-02-2023 11:12)


  • AW_Bos
  • Registratie: April 2002
  • Laatst online: 21:47

AW_Bos

Liefhebber van nostalgie... 🕰️

Heb je al naar de UPDATE-functie in MySQL gekeken?

UPDATE leden_tbl
SET leden_beurten_left = leden_beurten_left -1
WHERE leden_naam like '%$search%'

Oh ja, en let op escaping. Of gebruik parameters in PDO. Nu is je query zo lek als een mandje.

[Voor 6% gewijzigd door AW_Bos op 06-02-2023 23:16]

☀️ Goedemorgen zonneschijn! ☀️
☀️Ja, je maakt me zo gelukkig, en door jou voel ik me fijn! ☀️

Alle reacties


Acties:
  • Beste antwoord
  • +1Henk 'm!

  • AW_Bos
  • Registratie: April 2002
  • Laatst online: 21:47

AW_Bos

Liefhebber van nostalgie... 🕰️

Heb je al naar de UPDATE-functie in MySQL gekeken?

UPDATE leden_tbl
SET leden_beurten_left = leden_beurten_left -1
WHERE leden_naam like '%$search%'

Oh ja, en let op escaping. Of gebruik parameters in PDO. Nu is je query zo lek als een mandje.

[Voor 6% gewijzigd door AW_Bos op 06-02-2023 23:16]

☀️ Goedemorgen zonneschijn! ☀️
☀️Ja, je maakt me zo gelukkig, en door jou voel ik me fijn! ☀️


  • X-DraGoN
  • Registratie: Juli 2005
  • Laatst online: 16:57
Merci @AW_Bos Ik kende de "update" functie niet in SQL.

Nu werkt het, dankje wel

  • SH4D3H
  • Registratie: Juni 2004
  • Laatst online: 22-03 10:28
AW_Bos schreef op maandag 6 februari 2023 @ 23:16:
Nu is je query zo lek als een mandje.
Als er daadwerkelijk PHP 7.2 wordt gebruikt is dat an sich al een (groot) security risico. Er worden voor 7.2 al meer dan 2 jaar geen (security) updates meer uitgebracht. Probeer zo snel mogelijk over te stappen op PHP 8.1 zodat je weer even safe zit.

[Voor 4% gewijzigd door SH4D3H op 07-02-2023 11:31]


  • AW_Bos
  • Registratie: April 2002
  • Laatst online: 21:47

AW_Bos

Liefhebber van nostalgie... 🕰️

X-DraGoN schreef op dinsdag 7 februari 2023 @ 11:12:
Merci @AW_Bos Ik kende de "update" functie niet in SQL.

Nu werkt het, dankje wel
Fijn :)
Misschien even handig om de basis van SQL-queries door te nemen. Kan altijd goed van pas komen.

☀️ Goedemorgen zonneschijn! ☀️
☀️Ja, je maakt me zo gelukkig, en door jou voel ik me fijn! ☀️


  • Cyphax
  • Registratie: November 2000
  • Laatst online: 21:56

Cyphax

Moderator LNX

Deze vraag hoort thuis in Softwareontwikkeling
Bij deze een verhuizing die kant op :)

Saved by the buoyancy of citrus

Pagina: 1


Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee