PHP 7.2 - database query, waarde aanpassen en wegschrijven

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • X-DraGoN
  • Registratie: Juli 2005
  • Laatst online: 09:35
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: 09:37

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 ]

Telecommunicatie van vroeger
🚅Alles over spoor en treintjes

Alle reacties


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

  • AW_Bos
  • Registratie: April 2002
  • Laatst online: 09:37

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 ]

Telecommunicatie van vroeger
🚅Alles over spoor en treintjes


Acties:
  • 0 Henk 'm!

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

Nu werkt het, dankje wel

Acties:
  • +1 Henk 'm!

  • SH4D3H
  • Registratie: Juni 2004
  • Laatst online: 30-09 13:57
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 ]


Acties:
  • 0 Henk 'm!

  • AW_Bos
  • Registratie: April 2002
  • Laatst online: 09:37

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.

Telecommunicatie van vroeger
🚅Alles over spoor en treintjes


Acties:
  • 0 Henk 'm!

  • Cyphax
  • Registratie: November 2000
  • Laatst online: 01-10 22:36

Cyphax

Moderator LNX

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

Saved by the buoyancy of citrus

Pagina: 1