Variabele wordt 'vertraagd' bijgewerkt

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Junior/Medior Front-end developer

Functie Als Front-end developer werk je intensief samen met 1 van de UX-designers en denk je mee over de gebruiksvriendelijkheid en design van onze web- en mobile apps. Je bent betrokken bij sessies met gebruikers om designs te valideren en usability van de app-in-wording te testen. Vervolgens gebruik je dit om samen met je team waarin ook back-end (.NET) developers zitten, te zorgen voor de realisatie van de best mogelijke apps voor studenten en docenten. Eisen • Je hebt een hands-on development en coding mind-set en werkt graag aan een high quality code base welke je consequent onderhouden kan worden

Bekijk vacature »

Gezocht: .Net ontwikkelaars met een maatschappelij

Bedrijfsomschrijving Zoek jij als medior .Net ontwikkelaar een inspirerende werkplek bij een bedrijf met maatschappelijk verantwoordelijkheidsgevoel? Dan is deze vacature je op het lijf geschreven. De organisatie bestaat ruim 20 jaar en ze ontwikkelen in house applicaties waarmee de zorgsector enorm mee gebaat is. Jouw applicaties worden gebruikt door duizenden gebruikers waardoor je echt een waardevolle bijdrage kan leveren aan de maatschappij. Het bedrijf is zeer innovatief en vindt een goede werk/privé balans belangrijk. Je krijgt alle mogelijkheden om jezelf verder te ontwikkelen, je werktijden in te delen en daarnaast is het ook mogelijk om deels thuis te werken. Het

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Front-end Developer

Do you want to work with the latest technologies on the development of new systems and applications? Create elegant interfaces using VueJS for thousands of users? Get moving and strengthen Nederlandse Loterij as a Front-end Developer. Thanks to your efforts, our services are always presented in style. As a Front-end Developer you are responsible for website development and improving customer experience based on data analyze. In this way, you directly contribute to a happy, healthy and sporty Netherlands. As a Front-end Developer you score by: Writing elegant, testable components without side-effects to provide functionality to the users Website development, adding

Bekijk vacature »

PHP Developer

Functie omschrijving Voor een bedrijf in Den Bosch zoek ik een PHP Developer, die al wat werkervaring heeft. Jij gaat aan de slag met de verdere professionalisering van de interne applicaties en software. In de functie ga je verder: Verdere ontwikkeling eigen CRM systeem, vooral middels PHP; Bouwen van verschillende API's & koppelingen; Meedenken om de software/applicaties te verbeteren/optimaliseren; Aan de slag met de interne tooling. Bedrijfsprofiel Dit bedrijf is actief binnen de telecombranche. Het hoofdkantoor zit in regio van Den Bosch en er werken ruim 70 medewerkers, verdeeld over verschillende afdelingen. De afdeling Development bestaat uit vijf collega's, onder

Bekijk vacature »

C# Ontwikkelaar

Functieomschrijving Voor een software ontwikkelaar in de omgeving van Vught zijn we op zoek naar een gemotiveerde C# ontwikkelaar. Deel jij hun passie voor development en dan vooral in C#.NET? Dan kan dit wel eens jouw droombaan zijn! Jouw werkzaamheden zullen er ongeveer als volgt uit gaan zien Door de wensen van de klant goed te begrijpen ga jij aan de slag dit om te zetten naar passende oplossingen en werk je deze uit tot een sterk eindproduct. Je gaat je bezighouden met de ontwikkeling van webapplicaties en websites, dit doe je door middel van ASP.NET, MVC Frameworks en C#.

Bekijk vacature »

Functioneel applicatiebeheerder - SOP-SYS-SAM

TenneT is hard groeiend om de onze ambities waar te kunnen maken. Zo nemen wij een leidende rol in het aanjagen van de energietransitie. Het werven van nieuw talent speelt daarin een cruciale rol. Wij zijn op zoek naar een gedreven Functioneel Applicatiebeheerder voor het financiele domein op onze locatie Arnhem die hieraan wil bijdragen en misschien ben jij dat wel? Jouw bijdrage aan TenneT Je gaat samenwerken in een team van circa 15 functioneel applicatiebeheerders en gaat onderdeel uitmaken van een DevOps team. Met dit team ga je applicaties (laten) ontwikkelen en beheren. Hierbij concentreer je je vooral op

Bekijk vacature »

Fullstack developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Software Developer

Longship.io gaat de wereld veroveren met baanbrekende software en legendarische... pizza-avonden! Lees hier de vacature van IT Operations Manager! Bij Longship werken we met een team van 5 mensen aan software voor laadpaal operators. Longship is ontstaan in 2020 met als doel om de elektrische mobiliteitstransitie aan te jagen. We zijn nu al een wereldwijde speler doordat we continu voorop lopen in innovatie. Ons platform helpt het versneld elektrificeren van wagenparken, internationaal! Wij zijn een startup met grote ambities die we willen bereiken met een relatief klein en efficiënt team. Je krijg de kans om ontzettend veel te leren van

Bekijk vacature »

C# Developer Research and Development - Delft

Vacature details Vakgebied: Software/IT Opleiding: Medior Werklocatie: Delft Vacature ID: 6307 Introductie C# Developer Research and Development - Delft - Onze klant is één van de meest innovatieve bedrijven in de region van Delft. Op dit moment zijn ze voor het innovatie centrum. In het innovatie centrum wordt gewerkt aan de nieuwste technieken voor navigatie software. R&D / C# / Pattern Recognition / Algorithms / 3d Data / DotNET Functieomschrijving Als C# Developer kom je te werken in een innovatief scrumteam. We ontwikkelen en door ontwikkelen de nieuwste technieken op het gebied van navigatie software. Deze software wordt onder andere

Bekijk vacature »

Intern - Junior PHP ontwikkelaar in fris en jong t

Bedrijfsomschrijving Werk jij graag een in fris, flexibel en jong team? Bij ons ben jij vrij om te bepalen waar jij het liefst werkt en op de vrijdag komen wij gezellig bij elkaar op kantoor. Flexibiliteit en vrijheid zijn bij ons de norm en dat geeft jou de ruimte en energie om het beste uit jezelf te halen! Ons team bestaat uit vijf enthousiaste collega's die jou graag ondersteunen in zowel je persoonlijke als professionele ontwikkeling. Met twee ervaren Senior Developers als mentoren ben jij in goede handen. Wij zien onszelf als een vriendengroep die gezamenlijk werken aan iets moois

Bekijk vacature »

.NET Developer

Functie omschrijving Net afgestudeerd en op zoek naar een leuke baan als developer? Zoek niet verder! Ik heb een functie beschikbaar als back-end developer, bij een leuk familiebedrijf. Je gaat werken met de Microsoft stack en de technieken C# en .NET. Verder maak je gebruik van MVC en Entity framework. SQL kent ook geen geheimen voor jou. Jouw verantwoordelijkheden: Nieuwe maatwerk software bouwen; API koppelingen bouwen; Applicaties en software optimaliseren; Back-end programmeren. Een erg uitdagende functie, met veel vrijheid. Je kan meerdere dagen thuis werken en als je op kantoor werkt wordt de lunch verzorgd. Heb je interesse, reageer dan

Bekijk vacature »

Medior/Senior Software Developers gezocht in de Ra

Functie Op dit moment staan er posities open voor de volgende functies: Front-end, Back-End & Fullstack software developer. Als Front-End software developer werk je met JavaScript en de bijbehorende technologieën zoals TypeScript, Angular, React, Vue en Svelte. Als Back-End software developer ben je bezig in NodeJS en doe je dit met behulp van AWS, NoSQL, REST en GraphQL. Je krijgt leuke en uitdagende opdrachten met een gemiddelde duur van anderhalf jaar. Hier werk je in een team met andere IT’ers aan het ontwikkelen en verbeteren van software. Je wordt begeleid door een accountmanager die fungeert als jouw aanspreekpunt. Het team

Bekijk vacature »

OutSystems developer

Dit ga je doen Klanten adviseren over de mogelijkheden van OutSystems; OutSystems oplossingen ontwikkelen en implementeren; Stakeholdermanagement; Kennis en expertise up to date houden en delen met het team. Hier ga je werken Onze opdrachtgever, gevestigd in regio Amsterdam, is een innovatieve dienstverlener die zich richt op grote corporates in verschillende sectoren. Doordat je bij veel verschillende klanten aan de slag zal gaan is geen enkel project hetzelfde. De organisatie kenmerkt zich door hoge mate van professionaliteit en innovatieve oplossingen. In de rol van OutSystems developer zal jij verschillende grote klanten helpen om efficiënte OutSystems oplossingen te ontwikkelen en implementeren.

Bekijk vacature »

Randstad B.V.- Freelance Senior Fullstack Develope

Startdatum: 01.05.2023 Richttarief: € 75,00 - €85,00 Duur van de opdracht: 1 jaar Uren per week: 40 Werkmodel: Hybride, dinsdag en donderdag aanwezig op kantoor in Diemen en meer wanneer dit nodig is. Functieomschrijving: De ideale kandidaat gaat onderdeel uitmaken van een junior team binnen het foundation domein. Vanuit het foundation domein werkt dit team samen met andere foundation teams en teams uit het online domein (professionals B2B en B2C) voor het bouwen en integreren van HRM functionaliteiten (verlof en benefits) in de persoonlijke portal van Interim Professionals. Er is meer backend werk dan frontend, maar kandidaat moet beiden leuk

Bekijk vacature »
George van Baasbank

George van Baasbank

08/06/2014 12:59:59
Quote Anchor link
Hallo allemaal,

Ik zit met een probleem waar ik even niet uit kom. Het lijkt er op dat een variabele, $nRecord, vertraagd of soms niet wordt bijgewerkt danwel een andere waarde aanneemt.

Het gaat om een simpele routine:
1. Ik laad eerst een aantal records uit een database en toon die in een scherm
2. Vervolgens selecteer ik een record om te muteren (De $_GET geeft hier bijv. 2)
3. Ik muteer het record
4. Ik update de tabel met de nieuwe gegevens. (De WHERE geeft hier een ander recordnummer dan in de $_GET opgehaald)

Nu is het zo dat de waarde van variabele $nRecord niet altijd de waarde heeft van het id van het te muteren record.

Ik zal waarschijnlijk wel een loop ergens hebben zitten die ik niet zie. Zien jullie mijn fout ergens?



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
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
<?php

/**
 * @author             George van Baasbank
 * @package            Podiumspektakel
 * @subpackage        repetitieplanner
 * @copyright        Ermelo Software
 * @since            05-06-2014
 * bestandsnaam        repetitieplanner.php
 * beschrijving        Module om repetities te plannen             
 * opmerking        
 * taalmodule        
 * e-mail            [email protected]
 * project            Podiumspektakel
 * Tijdstempel      // <!-- phpDesigner :: Timestamp [6/8/2014 12:47:28 PM] -->
 *
 */
 
 /**
 * Wijzigingslog
 *
 * Datum        Developer    Aanpassing
 * 05-06-2014   George      Ontwikkeling
 *
 */

 
 session_start();
 
error_reporting(0);

require_once "include/pod_config.inc.php";
include "include/systeem.inc.php";
include "functies/functiebieb.inc.php";

// Declaratie variabelen
$lWijzigen = false;
$cKnopTekst01 = "Wijzigen";

// Geindexeerde array met dagen
$aDagen = array (
    0 => 'zo',
         'ma',
         'di',
         'wo',
         'do',
         'vr',
         'za',
);


// Inlezen bestaande planningen en gegevens
include "include/connectie.inc.php";
// Bestaande planning
include "queries/sql_sel_rooster.php";
$cResultPlanning = mysqli_query($verbinding,$sql);
// Beschikbare lokaties
include "queries/sql_sel_lokatie.php";
$cResultLokatie = mysqli_query($verbinding,$sql);
// Beschikbare gebruikers
include "queries/sql_sel_gebruiker.php";
$cResultGebruiker = mysqli_query($verbinding,$sql);

mysqli_close($verbinding);

if($_SERVER['REQUEST_METHOD'] === 'POST') {
    
    $cActie = $_POST['submit'];
    $nRecord = $_SESSION['recordnr'];
    
    if($cActie == $cKnopTekst01) {   // Wijzigen planning
        
        include "include/connectie.inc.php";
        $cGebruiker = $_POST['gebruiker'];
        $dDatum = $_POST['datum'];
        $cAanvang = $_POST['aanvang'];
        $cEinde = $_POST['einde'];
        $cLokatie = $_POST['lokatie'];
        $cTekst = mysqli_real_escape_string($verbinding,$_POST['tekst']);
        
        $sql = "UPDATE pod__rooster SET datum = '$dDatum', aanvang = '$cAanvang', einde = '$cEinde', lokatie = '$cLokatie', gebruiker = '$cGebruiker', omschrijving = '$cTekst', mutatie = 'George' WHERE id = '$nRecord'";
        echo $sql;
        $cResultWijziging = mysqli_query($verbinding,$sql);
        mysqli_close($verbinding);
    }
}


if($_GET['id']) {
    $nRecord = $_GET['id'];
    $_SESSION['recordnr'] = $nRecord;
    $lWijzigen = true;
    
    include "include/connectie.inc.php";
    $sql = "SELECT pr.*,ss.inhoud AS lok FROM pod__rooster AS pr JOIN sys__select AS ss ON ss.waarde = pr.lokatie WHERE pr.id = '$nRecord'";
    echo $sql;
    $cResultPlan = mysqli_query($verbinding,$sql);
    $rowPlan = mysqli_fetch_array($cResultPlan);
    $_SESSION['plangebruiker'] = $rowPlan['gebruiker'];
    $_SESSION['planlokatie'] = $rowPlan['lokatie'];
    mysqli_close($verbinding);
}



?>



<!DOCTYPE html>

<html lang="nl">

<head>
    <title>Repetitiepplanner | Podiumspektakel 2015</title>
    <meta charset="utf-8" />    
    <meta http-equiv="content-type" content="text/html" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
    <meta name="robots" content="noindex,nofollow" />
    <meta name="googlebot" content="noodp, noarchive, nosnippet, noindex, nofollow" />
    <meta name="keywords" content="<?php echo $cMetaKeywords ; ?>" />
    <meta name="author" content="<?php echo $cMetaAuteur ; ?>" />
    <meta name="description" content="<?php echo $cMetaDescription ; ?>" />
    <meta name="copyright" content="Ermelo Software 2014" />
    <link rel="stylesheet" href="styles/elegant-press.css" type="text/css" />
    <script src="scripts/elegant-press.js" type="text/javascript"></script>
    <!--[if IE]><style>#header h1 a:hover{font-size:75px;}</style><![endif]-->
    
    <style>
        .links{margin:10px;}
        .content{margin:20px ; width:42%; height:500px; padding:20px; overflow:auto; -webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; float:left;}
        .content p:nth-child(even){font-family:Georgia,serif; font-size:17px; font-style:italic;}
        
        #content_1{background: silver;}
        #content_1 p:nth-child(even){color:#999;}
        #content_2{background: silver;}
        #content_2 p:nth-child(even){color:#999;}
    </style>
    
    <!-- jQuery-plugin voor scrollen -->
    <link rel="stylesheet" href="styles/jquery.mCustomScrollbar.css" type="text/css" />
</head>

<body>
    <div class="main-container">
        <?php include "include/header.inc.php" ; ?>
    </div>
    
    <div class="main-container">
        
    </div>
    
    <a href="ingelogd.php#bovenaan"><div class="vaste_tab_links">
        <div class="tekst90graden">Terug</div>
    </div></a>
    
    <div class="main-container">
        <div class="container1">
            <br />
            <br />
            <article class="box2" id="home_featured21">
                <p class="headertekst">Repetitieplanner</p>
                <div class="regelhoogte25"></div>
                <a id="bovenaan"></a>
                <div class="box3" style="height: 650px;">
                    <div class="regelhoogte25"></div>
                    <!-- Hier komt de content -->
                    <div id="content_1" class="content">
                        <p class="headertekst">Bestaande planningen</p>
                        <div class="regelhoogte25"></div>
                        <table style="width: 400px; margin-left: 10px; border: none;">
                            <tr>
                                <td class="standaardtekst" style="width: 20px; border: none;">Dag</td>
                                <td class="standaardtekst" style="width: 100px; border: none;">Datum</td>
                                <td class="standaardtekst" style="width: 100px; border: none;">Lokatie</td>
                                <td class="standaardtekst" style="width: 50px;border: none;">Aanvang</td>
                                <td class="standaardtekst" style="width: 50px;border: none;">Einde</td>
                                <td class="standaardtekst" style="width: 50px;border: none;"></td>
                                <td class="standaardtekst" style="width: 50px;border: none;"></td>
                            </tr>
                            <?php
                                while($rowDatum = mysqli_fetch_array($cResultPlanning)) {
                                    $DagVanDeWeek = date("w", strtotime($rowDatum['datum']));
                                    $nSelectie = $rowDatum['id'];
                            ?>

                            <tr>
                                <td class="standaardtekst" style="width: 20px; border: none;"><?php echo $aDagen[$DagVanDeWeek] ; ?></td>
                                <td class="standaardtekst" style="width: 100px;border: none;"><?php echo nederlandse_datum($rowDatum['datum']) ; ?></td>
                                <td class="standaardtekst" style="width: 100px;border: none;"><?php echo $rowDatum['lok'] ; ?></td>
                                <td class="standaardtekst" style="width: 50px;border: none;"><?php echo substr($rowDatum['aanvang'],0,5) ; ?></td>
                                <td class="standaardtekst" style="width: 50px;border: none;"><?php echo substr($rowDatum['einde'],0,5) ; ?></td>
                                <td class="standaardtekst" style="width: 50px;border: none;"><a href="repetitieplanner.php?id=<?php echo $nSelectie ; ?>#bovenaan"><img title="Wijzigen roosterdatum" src="images/edit.gif" /></a></td>
                                <td class="standaardtekst" style="width: 50px;border: none;"><img title="Verwijderen roosterdatum" src="images/delete.png" /></td>
                            </tr>
                            <?php } ?>
                        </table>
                    </div>
                    <div id="content_2" class="content">
                        <?php
                            if($lWijzigen == true) {
                        ?>

                        <p class="headertekst">Wijzigen planning</p>
                        
                        <form action="repetitieplanner.php#bovenaan" method="POST">
                            <table>
                                <tr>
                                    <td>Gebruiker:</td>
                                    <td>
                                        <?php
                                            mysqli_data_seek($cResultGebruiker,0);
                                            while($rowGebruiker = mysqli_fetch_array($cResultGebruiker)){
                                                if($rowGebruiker['waarde'] == $_SESSION['plangebruiker']) {
                                                    $lGebruiker = 'checked="checked"';
                                                }
else {
                                                    $lGebruiker = "";
                                                }

                                        ?>

                                        <input type="radio" name="gebruiker" <?php echo $lGebruiker ; ?> value="<?php echo $rowGebruiker['waarde'] ; ?>" /><?php echo $rowGebruiker['inhoud'] ; ?><br />
                                        <?php } ?>
                                    </td>
                                </tr>
                                <tr>
                                    <td>Datum:</td>
                                    <td><input name="datum" type="date" value="<?php echo $rowPlan['datum'] ; ?>" /></td>
                                </tr>
                                <tr>
                                    <td>Aanvang:</td>
                                    <td><input name="aanvang" type="time" value="<?php echo $rowPlan['aanvang'] ; ?>" /></td>
                                </tr>
                                <tr>
                                    <td>Einde:</td>
                                    <td><input name="einde" type="time" value="<?php echo $rowPlan['einde'] ; ?>" /></td>
                                </tr>
                                <tr>
                                    <td>Lokatie:</td>
                                    <td>
                                        <?php
                                            mysqli_data_seek($cResultLokatie,0);
                                            while($rowLokatie = mysqli_fetch_array($cResultLokatie)){
                                                if($rowLokatie['waarde'] == $_SESSION['planlokatie']) {
                                                    $lLokatie = 'checked="checked"';
                                                }
else {
                                                    $lLokatie = "";
                                                }

                                        ?>

                                        <input type="radio" name="lokatie" <?php echo $lLokatie ; ?> value="<?php echo $rowLokatie['waarde'] ; ?>" /><?php echo $rowLokatie['inhoud'] ; ?><br />
                                        <?php } ?>
                                    </td>
                                </tr>
                                <tr>
                                    <td>Toelichting:</td>
                                    <td>
                                        <textarea name="tekst"><?php echo $rowPlan['omschrijving'] ; ?></textarea>
                                    </td>
                                </tr>
                            </table>
                            <p class="midden"><input type="submit" name="submit" value="<?php echo $cKnopTekst01 ; ?>" /></p>
                        </form>
                        <?php } ?>
                    </div>
                    <div class="regelhoogte25"></div>
                    <div class="regelhoogte25"></div>
                    
                    
                    
                    <!-- Einde content -->
                </div>
                <div class="clear"></div>
            </article>    
        </div>
        <br />
        <br />
        <div class="container2">
        
        </div>
    </div>
    <div class="main-container">
    
    </div>
    
    <?php include "include/footer.inc.php" ; ?>
    
    <!-- custom scrollbars plugin -->
    <script src="scripts/jquery.mCustomScrollbar.concat.min.js"></script>
    <script>
        (function($){
            $(window).load(function(){
                $("#content_1").mCustomScrollbar({
                    scrollButtons:{
                        enable:true
                    }
                });
                $("#content_2").mCustomScrollbar({
                    scrollButtons:{
                        enable:true
                    }
                });
                $("#content_3").mCustomScrollbar({
                    scrollButtons:{
                        enable:true
                    }
                });
            });
        })(jQuery);
    </script>
</body>

</html>
Gewijzigd op 08/06/2014 13:01:55 door George van Baasbank
 
PHP hulp

PHP hulp

15/07/2024 20:38:17
 
Erwin H

Erwin H

08/06/2014 13:03:40
Quote Anchor link
Jaaaaa, altijd leuk om honderden regels code door te gaan spitten....

Not...

Probeer het zelf eens te vinden, door om de zoveel regels gewoon even een echo te geven van de variabele die volgens jou verkeerd gaat. Zie je vanzelf waar de waarde niet meer klopt, weet je ook waar je het zoeken moet. Dat is voor jou heel simpel te doen, voor ons onmogelijk.
 
George van Baasbank

George van Baasbank

08/06/2014 13:14:13
Quote Anchor link
Dat heb ik ook gedaan: Regel 93 is de waarde van $_GET['id'] goed en op regel 80 is de variabele $nRecord niet altijd gelijk aan de $_GET['id'] Zie de echo's.
Het probleem zit (volgens mij) ergens in het php-deel. De html-code is wellicht niet nodig

Toevoeging op 08/06/2014 13:17:57:

Voor de belangstellenden: http://www.podiumspektakel.eu/repetitieplanner.php#bovenaan
Hier kan vrijuit worden getest.
Gewijzigd op 08/06/2014 13:19:18 door George van Baasbank
 
Obelix Idefix

Obelix Idefix

08/06/2014 13:22:40
Quote Anchor link
Relevante code was volgens mij hetgeen t/m je doctype geweest.

Heb de code proberen te lezen/begrijpen, maar ik zie vooral veel onnodige variabelen die aangemaakt worden, waardoor je code onnodig lang wordt (en onoverzichtelijk).

Wat is het nut van regel 66 / 67? Je kunt toch in 1x controleren of een formulier is verzonden en of $_POST['submit'] gelijk is aan wijzigen?
De variabele $nRecord lijkt me ook wat overbodig, net als alle nieuwe variabelen op regel 72 / 77.

regel 86 / 88 :
Je controleert nergens of id wel een getal is (wat ik vermoed dat het moet zijn)
Je maakt een variabele $nRecord aan; waarom?
Waarom een vage variabele als $cKnopTekst01?

Mijn vermoeden is dat de waarde in de sessie niet is wat jij verwacht. Maar door te gaan debuggen zul je daar zelf achter moeten komen.
 
- SanThe -

- SanThe -

08/06/2014 13:31:43
Quote Anchor link
Op regel 80 is er gePOST en komt het id uit een session.
Op regel 93 komt het id uit een GET.
 
Erwin H

Erwin H

08/06/2014 14:04:15
Quote Anchor link
Om te beginnen faalt je logica gewoon. Wat je, als ik het goed begrijp, doet is een pagina ophalen via een get request. Het id sla je op in een sessie en bij de post om iets aan te passen haal je het id op uit de sessie.

Dat is fout.

Wat als iemand een pagina ophaalt voor id=1. In de sessie staat nu 1.
Vervolgens, in een andere tab haalt dezelfde persoon een pagina op voor id=2. In de sessie staat nu 2, 1 is overschreven.
Vervolgens past die gebruiker iets aan in de eerste pagina, id=1 dus. Maar in je sessie staat 2....

Logica aanpassen dus en dit niet op deze manier proberen op te lossen. Kost je alleen maar tijd.
 
George van Baasbank

George van Baasbank

08/06/2014 16:08:44
Quote Anchor link
Erwin,

Naast alle opmerkingen die ik gekregen heb wil ik graag deze even met je doornemen:

Quote:
Wat als iemand een pagina ophaalt voor id=1. In de sessie staat nu 1.
Vervolgens, in een andere tab haalt dezelfde persoon een pagina op voor id=2. In de sessie staat nu 2, 1 is overschreven.
Vervolgens past die gebruiker iets aan in de eerste pagina, id=1 dus. Maar in je sessie staat 2....



Omdat ik probeer te leren uit alle fouten vind ik deze wel belangrijk. Hoe kan ik het geschetste probleem voorkomen?
Gewijzigd op 08/06/2014 16:09:48 door George van Baasbank
 
Erwin H

Erwin H

08/06/2014 16:17:47
Quote Anchor link
Zorg dat je in de post waardes ook het id meegeeft. Dat kan ofwel in een GET parameter, of in een POST:
(note: check wel altijd of de GET parameter bestaat, dat heb ik voor de duidelijkheid even weggelaten)
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
//als GET parameter:
echo '<form action="repetitieplanner.php?id='.$_GET['id'].'#bovenaan" method="POST">';

//as POST parameter:
echo '<input type="hidden" name="id" value="'.$_GET['id'].'">';
?>

Op de manier kan een gebruiker alle pagina's tegelijk open hebben, maar weet je altijd precies welke hij probeert te bewerken.
Gewijzigd op 08/06/2014 16:18:31 door Erwin H
 
Ivo P

Ivo P

09/06/2014 07:44:36
Quote Anchor link
Waarom 3x een connectie met de database openen en sluiten?
 



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.