Update via Formulier

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Software Developer

Functie omschrijving Veel begeleiding en de kans om je verder te ontwikkelen als software developer. Dat kunnen wij jou bieden bij deelname aan deze leuke traineeship. Je krijgt een mentor toegewezen die jou alle kneepjes van het vak leert. Heb jij al wat ervaring als software developer? Daar worden wij heel blij van! Lees snel verder! Bedrijfsprofiel Als software developer neem je deel aan een trainings programma in de omgeving van Haarlem waar je persoonlijk wordt begeleidt, zodat je alle kneepjes van het vak leert. Aan de hand van jouw kennis en ervaring krijg je een persoonlijk opleidingstraject. Je gaat

Bekijk vacature »

Fasttrack learning & development voor Java dev

Wat je gaat doen: Wij zoeken enthousiaste en ambitieuze junior en medior ontwikkelaars die toe zijn aan de volgende stap in hun carrière. Wij helpen je op je pad naar senior ontwikkelaar door ons fasttrack learning en development programma. Na een kort en intensief programma ga jij aan de slag bij klanten van DPA. Daarnaast krijg je veel ruimte om je te ontwikkelen als persoon en als specialist. De eerste maand gaan we aan de slag om je certificeringen te behalen waaronder OCP (Oracle Certified Professional). Daarnaast nemen we een deepdive in Spring Boot. Ook laten we je kennismaken met

Bekijk vacature »

Front-end Developer

Front-end Developers opgelet! Bij Luminis zijn ze opzoek naar jou. Lees de vacature en solliciteer direct. Luminis is een software- en technologiebedrijf met meerdere vestigingen. Vanuit deze vestigingen werken 200 professionals aan technisch hoogwaardige oplossingen voor klanten zoals KLM, Nike en Bol.com. Ook ontwikkelt Luminis eigen oplossingen op het gebied van cloud, Internet of Things, data intelligence, e-sports en e-learning. Luminis onderscheidt zich door aantoonbaar voorop te lopen in technologie en innovatie. Luminis heeft drie kernpunten die verankerd zitten in alles wat we doen: het omarmen van nieuwe technologie, meesterschap en kennis delen. Functiebeschrijving First things first! Het is belangrijk

Bekijk vacature »

Als PHP developer bijdragen aan beter onderwijs?

Functie Momenteel zijn ze op zoek naar een PHP developer die mee gaat werken aan de (door)ontwikkeling van de producten en zo helpt aan de uitvoering van hun ontwikkelprojecten. Je komt te werken binnen hun development team bestaande uit 6 ontwikkelaars. Ze staan zowel open voor meer junior als medior/senior developers. Je kunt snel veel verantwoordelijkheid krijgen en doorgroeien binnen het bedrijf. Bovendien ben je betrokken bij het bepalen van de product roadmap en de inbreng van (nieuwe) technologieën. De applicaties waaraan je werk worden gebruikt op onderwijsinstellingen door heel Nederland. De tech-stack bestaat voornamelijk uit Laravel (PHP), Vue.js en

Bekijk vacature »

Lead Webdeveloper

As Lead Web Developer at KUBUS you are responsible for the implementation design of requirements and the software architecture of the web application and services of BIMcollab. In your role as lead developer you will naturally search for the optimum between the required implementation time, the performance of the application and a fast go-to-market of features, in line with our automated test and release train. Together with the other senior developers in your team you monitor the architecture of the application and you advise the product owner about necessary refactoring to improve the maintainability of the platform. Our development team

Bekijk vacature »

Java developer (remote)

Functie Wat ga je doen als Java Developer? Jij als Java ontwikkelaar komt te werken in 1 van onze SCRUM teams. Momenteel werken er zo’n 30 ontwikkelaars binnen onze organisatie waarbij jij de brug slaat tussen het bouwen van verschillende functionaliteiten binnen onze applicaties en deze vervolgens te integreren in onze centrale hub. Je start je dag om 9 uur met een stand up en dan pak je jouw taken op voor de dag. Hieronder een aantal taken die jij zal uitvoeren: – Het bedenken en uitbouwen van features binnen de verschillende applicaties – Onderhouden van CI/CD pipelines – Bezighouden

Bekijk vacature »

Laravel 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 »

.NET developer

Functie Als .NET developer wordt jij onderdeel van ons ICT team. In dit multidisciplinaire team ben jij samen met onze senior .NET ontwikkelaar en medior .NET ontwikkelaar verantwoordelijk voor ons ERP systeem. In dit systeem (Navision) ga jij leren ontwikkelen. Wij bieden jou dan ook een gedegen opleiding aan, samen met de ondersteuning van onze Senior .NET developer. Daarnaast ga jij aan de slag met ons portaal geschreven in Sharepoint. Verder ben jij verantwoordelijk voor EDI verkeer en het ontwikkelen binnen het ERP systeem en andere toepassingen en rapportages. Van jou wordt verwacht dat jij het proces goed leert kennen

Bekijk vacature »

Ervaren PHP Developer

Functieomschrijving PHP Developer met brede ervaring gezocht! Ben jij een Full Stack PHP Developer met brede ervaring die toe is aan een volgende stap? Lees dan snel verder! Voor onze eindklant in de regio Nunspeet zijn wij op zoek naar een ervaren PHP Developer die het IT Team van deze organisatie gaat versterken. Wij zoeken een enthousiaste en breed georiënteerde IT-er die er voor gaat zorgen dat deze innovatieve organisatie de volgende stap gaat maken. Om deze functie goed uit te kunnen voeren moet je communicatief goed zijn en in staat zijn om zelfstandig problemen op te lossen. Daarnaast bestaat

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

C# Ontwikkelaar

In het kort Als C# .NET Core ontwikkelaar ga je binnen onze business unit Transport en Logistiek aan de slag complexe maatwerk software voor bedrijf kritische systemen binnen de technische automatisering. Denk bijvoorbeeld een IoT-oplossing voor de logistieke sector waarbij we van ruim 200.000 machines de telemetrie en events verwerken. We zijn actief in de distributielogistiek, havenlogistiek en productielogistiek. Naast C# en .NET Core maken we ook gebruik van Azure technologie. En als trotse Microsoft Gold Partner leren we graag van en met jou. Wil jij jezelf blijven ontwikkelen binnen de technische automatisering met .NET, dan gaan we deze uitdaging

Bekijk vacature »

.NET Software Developer

Dit ga je doen Als .NET Software Developer zul jij je voornamelijk bezig houden met: Het van scratch af aan bouwen van applicaties (.NET, C#, Bootstrap, KnockoutJs en WebAPI2); Het testen van jouw code d.m.v. het uitvoeren van unittesten; Het oplossen van bugs in de code; Het onderhouden van contact met collega's betreffende de door jouw ontwikkelde applicaties; Het verbeteren en doorontwikkelen van maatwerkapplicaties. Hier ga je werken Jij gaat aan de slag als .NET Software Developer en gaat je focussen op het bedenken, ontwikkelen en testen van maatwerkapplicaties in voornamelijk C#. Dit ga je doen bij een grote, internationale

Bekijk vacature »

C# .NET Software Developer

Functie omschrijving Ben jij op zoek naar een nieuwe uitdaging binnen software development waar je gaat werken voor een jong en flexibel bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Software Developer met ervaring binnen C# .NET die enthousiast wordt van het aansluiten en begeleiden van (complexe) nieuwe klanten. Verder begeleid je complexe projecten, ben jij iemand die altijd kansen ziet? Dan zoeken wij jou! In deze functie ga jij je bezighouden met: Meedenken in oplossingsrichtingen; Werken aan de architectuur; Het verbeteren van functionaliteiten binnen het dataplatform; Ontwikkelen van nieuwe technologieën. Bedrijfsprofiel Waar ga je aan de

Bekijk vacature »

Senior Airport Developer ( System engineer)

De functie Nice to know (you) De nieuwe A-pier wordt de duurzaamste van Schiphol. Als deze af is ligt er 4000 vierkante meter zonnepanelen op het dak. En de toiletten? Die spoelen door met regenwater. we gaan ervoor: het creëren van de meest duurzame en hoogwaardige luchthavens ter wereld. een toekomstbestendig en duurzaam Schiphol. Daar werken we elke dag hard aan in team Development & Sustainability. Jij bent regisseur, expert én aanjager van de ontwikkeling van Schiphol. Connecting your world Hoe maak je de ambities en doelstellingen van Schiphol concreet in een project? De waarde voor Schiphol naar eisen die

Bekijk vacature »

SAP HANA Cloud Application Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Veldhoven Vacature ID: 12662 Introductie HANA Cloud Application Developer at a High Tech company. The company is the world's leading provider of lithography systems for the semiconductor industry, manufacturing complex machines that are critical to the production of integrated circuits or chips. Our purpose is “unlocking the potential of people and society by pushing technology to new limits”. We do this guided by the principles “Challenge”, “Collaborate” and “Care”. This role is situated in the Big Data Analytics (BDA) Domain. The teams have mixture of young talent and senior specialists and have a

Bekijk vacature »
Jurgen de Brouwer

Jurgen de Brouwer

15/11/2014 18:25:21
Quote Anchor link
Hallo,

Ik heb een vreemd probleem.
Ik heb een script waar ik mijn database mee kan update.
Dit werkt perfect.
Alleen in mijn formulier worden de database waardes niet goed weergeven
Als er 2 woorden in de tabel staan word alleen het eerste woord weergeven.
Weet iemand hoe ik dat kan oplossen?

Want als ik nu bijvoorbeeld maar 1 regel wil aanpassen en een andere regel bevat bv Jan klaassen.
Veranderd dit in 'Jan'

Dit is mijn scipt:

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
<?php
$sql
= "SELECT * FROM `tabel' WHERE     ID='1'";

$result = mysql_query( $sql, $db );
while( $row = mysql_fetch_array( $result )) {


echo "<form action=update.php method=post>";
echo "<table width=600 border=1>";
echo "<tr><td width=230 align=right><span class=style2>ID:</span></td>";

    echo "<td width=370><input type=text name=ID value=" . $row['ID'] . "></td>";
      echo "</tr><tr><td align=right><span class=style2>Regel1:</span></td>";
      echo "<td><input type=text name=regel1 id=regel1 value=" . $row['regel1'] . " ></td>";
      echo "</tr><tr><td align=right><span class=style2>Regel2</span></td>";
    echo "<td><input type=text name=regel2 id=ragel2 value=" . $row['regel2'] . "></td>";
     echo "</tr><tr><td align=right><span class=style2>Prijs:</span></td>";
    echo "<td><input type=text name=prijs id=prijs value=" . $row['prijs'] . "></td>";
     echo "</tr><td>" . "<input type=submit name=update value=update" . " </td>";
     echo "<td>" . "<input type=hidden name=ID value=" . $row['ID'] . "</td>";
    echo "</form>
</table>"
;
}

?>
Gewijzigd op 15/11/2014 18:26:04 door Jurgen de Brouwer
 
PHP hulp

PHP hulp

16/11/2024 18:53:42
 
- Ariën  -
Beheerder

- Ariën -

15/11/2014 18:31:17
Quote Anchor link
Waarom gebruik je een while-loop voor een enkel record? Lijkt me overbodig...
En wat zegt een print_r() op $row?
 
Pipo Clown

Pipo Clown

15/11/2014 18:45:14
Quote Anchor link
Ik zou eerst je HTML eens op orde gaan maken.

Je begint een tabel binnen een form om diezelfde tabel buiten de form te beeindigen,
je gebruikt inline CSS wat behoorlijk achterhaald is, er is nagenoeg geen enkele quote gebruikt bij de id- en naam-waarden, er wordt nergens ingesprongen waardoor het overzicht totaal kwijt is.
 
Jurgen de Brouwer

Jurgen de Brouwer

15/11/2014 19:55:59
Quote Anchor link
Hoe zou ik dat anders kunnen doen als een while-loop?
Als ik print_r() doe krijg ik netjes alle informatie te zien.


Is de html zo beter?

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
<?php
$sql
= "SELECT * FROM `tabel` WHERE ID='1'";


$result = mysql_query( $sql, $db );
while( $row = mysql_fetch_array( $result )) {

echo "<form action=update.php method=post>";
echo "<table width='300' border='1' cellspacing='5' cellpadding='0'>";
echo "<tr><td>ID:</td>";
echo "<td><input type='text' name='ID' value=" . $row['ID'] . "></td>";
echo "</tr><tr><td>Regel 1:</td>";
echo "<td><input type='text' name='regel1' value=" . $row['regel1'] . ">";
echo "<tr><td>Regel 2:</td>";
echo "<td><input type='text' name='regel2' value=" . $row['regel2'] . "></td>";
echo "</tr><tr><td>Prijs:</td>";
echo "<td><input type='text' name='prijs' value=" . $row['prijs'] . "></td>";
echo "</tr><tr>";
echo "<td><input type='hidden' name='ID' value=" . $row['ID'] . "></td>";
echo "<td><input type='submit' name='update' value='update'> </td>";
echo "</tr></table>";
echo "</form>";
}

?>
 
Pipo Clown

Pipo Clown

15/11/2014 20:53:42
Quote Anchor link
Kijk eens naar onderstaande code, ik denk dat dit een stuk duidelijker is, het is bovendien minder typewerk, veel minder quotjes en punt kommas.

Bovendien zag ik op deze manier in één oogopslag dat er een </tr> ontbrakt na naam1.

Binnen HTML code moet je dubbelquotes gebruiken ipv enkelquotes.

Op de regel <form stonden helemaal geen quotes.

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
<?php
$sql
= "SELECT * FROM tabel WHERE ID=1 ";


$result = mysql_query( $sql, $db );
while( $row = mysql_fetch_array( $result )) {

    echo    <<<EOT
    <form action="update.php" method="post">
        <table width="300" border="1" cellspacing="5" cellpadding="0">
            <tr>
                <td>ID:</td>
                <td><input type="text" name="ID" value="$row[ID]"></td>
            </tr>
            <tr>
                <td>Regel 1:</td>
                <td><input type="text" name="regel1" value="$row[regel1]">
            </tr>
            <tr>
                <td>Regel 2:</td>
                <td><input type="text" name="regel2" value="$row[regel2]"></td>
            </tr>
            <tr>
                <td>Prijs:</td>
                <td><input type="text" name="prijs" value="$row[prijs]"></td>
            </tr>
            <tr>
                <td><input type="hidden" name="ID" value="$row[ID]"></td>
                <td><input type="submit" name="update" value="update"></td>
            </tr>
        </table>
    </form>
EOT
;

}

?>
Gewijzigd op 15/11/2014 20:54:24 door Pipo Clown
 
Frank Nietbelangrijk

Frank Nietbelangrijk

15/11/2014 21:50:41
Quote Anchor link
Jurgen de Brouwer op 15/11/2014 19:55:59:
Hoe zou ik dat anders kunnen doen als een while-loop?
Als ik print_r() doe krijg ik netjes alle informatie te zien.


Is de html zo beter?


Nou ik zag nog het één en ander
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
<?php

// indien dit bestand in de POST methode wordt aangeroepen is het formulier verstuurd.
if($_SERVER['REQUEST_METHOD'] == 'POST')
{

    // GEBRUIK GEEN mysql_ meer maar gebruik mysqli_ of PDO !!!
    
    // update de record in de tabel

    $result = mysqli_query($db, "UPDATE tabel SET regel1='".mysqli_real_escape_string($_POST['regel1'])
                                            .
"', regel2='".mysqli_real_escape_string($_POST['regel2'])
                                            .
"', prijs='".mysqli_real_escape_string($_POST['prijs'])
                                            .
"' WHERE id=".intval($_POST['id']));
                            
    if($result === FALSE)
        throw new Exception('Update naar tabel mislukt.' . mysqli_error($db));
        
    // optioneel voor een update is een redirect.
    else
        header('Location: index.php');
}


$id = $_GET['id'];

// query is het handigste tussen double quotes
$sql = "SELECT * FROM tabel WHERE ID=" . $id;
$result = mysqli_query($db, $sql);

// gebruik mysql_fetch_assoc()! mysql_fetch_array() gebruikt dubbel zoveel geheugen.
$row = mysqli_fetch_assoc($result);

/*
 * als je zeker weet dat je niet meer dan één record
 * krijgt vervang je de while gewoon voor een if.
 * Bovendien heeft een record update geen zin als die
 * niet bestaat dus dan maar een foutmelding geven.
 */

if($row === FALSE)
{

    throw new Exception('Geen record gevonden met id '.$id. ' in de tabel.');
    exit;
}


/*
 * Na alle PHP logica komt de output. Dat kunnen we buiten de PHP tags doen
 * De <form> attributen stonden niet tussen double qoutes en dat hoort wel.
 * De action hou ik gewoon op de pagina zelf. Waarom weggaan zolang niet alles goed is?
 * Singleton elementen zoals input en img sluit je af met /> en niet alleen met een >
 */

?>

<!doctype html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Untitled Document</title>
        <style>
            .labels {
              float:left;
              line-height: 25px;
              width: 70px;
              background-color: #CCC;
            }
            
            .form {
              float:left;
              line-height: 25px;
              width: 70px;
              margin-left:3px;
            }
            
            .clear {
              clear:both;
            }
    </style>
    </head>
    
    <body>
        <form action="" method="post"> <!-- waarom naar update.php? -->
            <div class="labels">
                <label for="id" >ID:</label><br>
                <label for="regel1" >Regel 1:</label><br>
                <label for="regel2" >Regel 2:</label><br>
                <label for="prijs" >Prijs:</label>
            </div>
            <div class="form">
                <input type="text" id="id" name="id" value="<?php echo $row['id']; ?>" /> <!-- singleton, dus />  -->
                <input type="text" id="regel1" name="regel1" value="<?php echo $row['regel1']; ?>" />
                <input type="text" id="regel2" name="regel2" value="<?php echo $row['regel2']; ?>" />
                <input type="text" id="prijs" name="prijs" value="<?php echo $row['prijs']; ?>" />
                <input type="hidden" name="id" value="<?php echo $row['id']; ?>" />
                <input type="submit" value="update" />
            </div>
            <div class="clear"></div>
        </form>
    </body>
</html>
Gewijzigd op 15/11/2014 22:00:33 door Frank Nietbelangrijk
 
Eddy E

Eddy E

15/11/2014 22:59:01
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
* Singleton elementen zoals input en img sluit je af met /> en niet alleen met een > */


Is niet nodig. Het mag wel, zodat het gelijk is aan X(HT)ML, maar het is in HTML(5) niet nodig. Ook in andere versies (4 bijvoorbeeld) niet nodig.

Voor de rest: veel beter. Al is $id = $_GET['id'] niet echt handig. Wat als die niet bestaat? En het is nu nutteloos kopieren. Gooi er dan tenminste nog een intval() overheen.
 
Frank Nietbelangrijk

Frank Nietbelangrijk

15/11/2014 23:03:45
Quote Anchor link
jep correct Eddy. Dank je wel voor de aanvulling.

p.s. Ik wist niet waar $id vandaan kwam dus gaf er wat dat betreft maar even een slinger aan :-)
 
Jurgen de Brouwer

Jurgen de Brouwer

16/11/2014 19:33:09
Quote Anchor link
Bedankt voor jullie reactie.
Weer veel van geleerd.

Alleen als ik de code gebruik van frank.
Word de datebase niet bijgewerkt.
Krijg ook geen fout meldingen
 
Frank Nietbelangrijk

Frank Nietbelangrijk

17/11/2014 01:03:45
Quote Anchor link
Hij was niet getest :-) Maar als je hem een beetje compleet plaatst kunnen we nog eens meekijken.
 
Jurgen de Brouwer

Jurgen de Brouwer

21/11/2014 13:25:13
Quote Anchor link
Sorry voor de late reactie.
Heb alleen tegen het weekend tijd om te hobbye.

Ik heb zelf een oplossing gevonden.
Dit is het script:
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
<?php
error_reporting(E_ALL);
session_start();
require_once("info.php");
$db = mysqli_connect ($host, $user, $password) or die ("Kan geen verbinding maken met de database ");

mysqli_select_db($db, $dbnaam) or die ($fout);

// indien dit bestand in de POST methode wordt aangeroepen is het formulier verstuurd.
if($_SERVER['REQUEST_METHOD'] == 'POST')
{

    // GEBRUIK GEEN mysql_ meer maar gebruik mysqli_ of PDO !!!
    
    // update de record in de tabel

    
       $regel1 = $_POST['regel1'];
    $regel2 = $_POST['regel2'];
    $prijs = $_POST['prijs'];
    $id = $_POST['ID'];
    
   $result = mysqli_query($db, "UPDATE tabel
                                   SET
                                       regel1 = '$regel1',
                                       regel2 = '$regel2',
                                       prijs = '$prijs'    
                                  WHERE
                                          ID = '$id'"
);
                            
    if($result === FALSE)
        throw new Exception('Update naar tabel mislukt.' . mysqli_error($db));
        
    // optioneel voor een update is een redirect.
    else
        echo('Reclame Bijgewerkt!');
}




// query is het handigste tussen double quotes
$sql = "SELECT * FROM middelbeers WHERE ID=1";
$result = mysqli_query($db, $sql);

// gebruik mysql_fetch_assoc()! mysql_fetch_array() gebruikt dubbel zoveel geheugen.
$row = mysqli_fetch_assoc($result);

/*
 * als je zeker weet dat je niet meer dan één record
 * krijgt vervang je de while gewoon voor een if.
 * Bovendien heeft een record update geen zin als die
 * niet bestaat dus dan maar een foutmelding geven.
 */

if($row === FALSE)
{

    throw new Exception('Geen record gevonden in de tabel.');
    exit;
}


/*
 * Na alle PHP logica komt de output. Dat kunnen we buiten de PHP tags doen
 * De <form> attributen stonden niet tussen double qoutes en dat hoort wel.
 * De action hou ik gewoon op de pagina zelf. Waarom weggaan zolang niet alles goed is?
 * Singleton elementen zoals input en img sluit je af met /> en niet alleen met een >
 */

?>

<!doctype html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Untitled Document</title>
        <style>
            .labels {
              float:left;
              line-height: 25px;
              width: 70px;
              background-color: #CCC;
            }
            
            .form {
              float:left;
              line-height: 25px;
              width: 70px;
              margin-left:3px;
            }
            
            .clear {
              clear:both;
            }
    </style>
    </head>
    
    <body>
        <form action="" method="post"> <!-- waarom naar update.php? -->
            <div class="labels">
                <label for="id" >ID:</label><br>
                <label for="regel1" >Regel 1:</label><br>
                <label for="regel2" >Regel 2:</label><br>
                <label for="prijs" >Prijs:</label>
            </div>
            <div class="form">
                <input type="text" id="ID" name="ID" value="<?php echo $row['ID']; ?>" /> <!-- singleton, dus />  -->
                <input type="text" id="regel1" name="regel1" value="<?php echo $row['regel1']; ?>" />
                <input type="text" id="regel2" name="regel2" value="<?php echo $row['regel2']; ?>" />
                <input type="text" id="prijs" name="prijs" value="<?php echo $row['prijs']; ?>" />
                <input type="hidden" name="ID" value="<?php echo $row['ID']; ?>" />
                <input type="submit" value="update" />
            </div>
            <div class="clear"></div>
        </form>
    </body>
</html>


Wat is het voordeel van een mysqli_real_escape_string zoals in jullie voorbeeld gebruikt word?
- Aar -:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 21/11/2014 13:39:20 door - Ariën -
 
- Ariën  -
Beheerder

- Ariën -

21/11/2014 13:40:09
Quote Anchor link
SQL-injection voorkomen, een hacking-techniek waarbij anderen eenvoudig je database-quotes kan manipuleren:
http://nl.wikipedia.org/wiki/SQL-injectie
 
Frank Nietbelangrijk

Frank Nietbelangrijk

21/11/2014 14:07:19
Quote Anchor link
Oké, ik heb even gekeken.

Volgens mij heb jij de foutmeldingen niet aan staan. Zet dit dan altijd bovenaan in je script:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
ini_set('display_errors',1);
error_reporting(E_ALL);
?>


Op regel vijf mag je direct de database selecteren:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$db
= mysqli_connect ($host, $user, $password, $database);
?>

Dit is anders ten opzichte van de mysql_ functies.
Regel 7 mag dan ook komen te vervallen.

Verder staat er op regel 21 nog UPDATE tabel in plaats van UPDATE middelbeers.
 
Jurgen de Brouwer

Jurgen de Brouwer

21/11/2014 14:41:56
Quote Anchor link
Regel 21 klopt want ik heb per ongeluk mijn andere database verwijderd.

Als ik dit script:
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
<?php
ini_set('display_errors',1);
error_reporting(E_ALL);
require_once("info.php");
$db = mysqli_connect ($host, $user, $password, $dbnaam) or die ("Kan geen verbinding maken met de database ");

// indien dit bestand in de POST methode wordt aangeroepen is het formulier verstuurd.
if($_SERVER['REQUEST_METHOD'] == 'POST')
{

    // GEBRUIK GEEN mysql_ meer maar gebruik mysqli_ of PDO !!!
    
 
    
  $result = mysqli_query($db, "UPDATE middelbeers SET regel1='".mysqli_real_escape_string($_POST['regel1'])
                                            .
"', regel2='".mysqli_real_escape_string($_POST['regel2'])
                                            .
"', prijs='".mysqli_real_escape_string($_POST['prijs'])
                                            .
"' WHERE id=".intval($_POST['id']));
      
                            
    if($result === FALSE)
        throw new Exception('Update naar tabel mislukt.' . mysqli_error($db));
        
    // optioneel voor een update is een redirect.
    else
        echo('Reclame Bijgewerkt!');
}



$sql = "SELECT * FROM middelbeers WHERE ID=1";
$result = mysqli_query($db, $sql);

// gebruik mysql_fetch_assoc()! mysql_fetch_array() gebruikt dubbel zoveel geheugen.
$row = mysqli_fetch_assoc($result);

if($row === FALSE)
{

    throw new Exception('Geen record gevonden in de tabel.');
    exit;
}



?>

<!doctype html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Untitled Document</title>
        <style>
            .labels {
              float:left;
              line-height: 25px;
              width: 70px;
              background-color: #CCC;
            }
            
            .form {
              float:left;
              line-height: 25px;
              width: 70px;Zaz
              margin-left:3px;
            }
            
            .clear {
              clear:both;
            }
    </style>
    </head>
    
    <body>
        
        <form action="" method="post"> <!-- waarom naar update.php? -->
            <div class="labels">
                <label for="id" >ID:</label><br>
                <label for="regel1" >Regel 1:</label><br>
                <label for="regel2" >Regel 2:</label><br>
                <label for="prijs" >Prijs:</label>
            </div>
            <div class="form">
                <input type="text" id="ID" name="ID" value="<?php echo $row['ID']; ?>" /> <!-- singleton, dus />  -->
                <input type="text" id="regel1" name="regel1" value="<?php echo $row['regel1']; ?>" />
                <input type="text" id="regel2" name="regel2" value="<?php echo $row['regel2']; ?>" />
                <input type="text" id="prijs" name="prijs" value="<?php echo $row['prijs']; ?>" />
                <textarea type="text" rows="5" cols="50" id-"test" name="test"><?php echo $row['test']; ?></textarea>
                <input type="hidden" name="ID" value="<?php echo $row['ID']; ?>" />
                <input type="submit" value="update" />
            </div>
            <div class="clear"></div>
        </form>
    </body>
</html>


krijg ik de volgende fout meldingen:
Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in F:\PHP\data\localweb\MYSQL\update1.php on line 14

Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in F:\PHP\data\localweb\MYSQL\update1.php on line 15

Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in F:\PHP\data\localweb\MYSQL\update1.php on line 16

Notice: Undefined index: id in F:\PHP\data\localweb\MYSQL\update1.php on line 17
Gewijzigd op 21/11/2014 14:43:29 door - Ariën -
 
- Ariën  -
Beheerder

- Ariën -

21/11/2014 14:44:30
Quote Anchor link
Beste Jurgen, zou je in het vervolg de scripts die je in dit topic plaatst tussen [code] en [/code] willen plaatsen? Dan zijn ze beter leesbaarder voor iedereen. Alvast bedankt!

- Over de meldingen over mysqli_real_escape_string, je dient twee parameters op te geven. De eerste verwijst naar de variabele van je connectie, en de tweede bevat je input, zoals je nu gebruikt.
- Verder lijkt er geen 'id' mee te zijn gekomen via je $_POST.
Gewijzigd op 21/11/2014 14:46:55 door - Ariën -
 
Peter  Flos

Peter Flos

21/11/2014 14:45:21
Quote Anchor link
mysqli_real_escape_string heeft 2 parameters nodig en jij geeft er 1.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
mysqli_real_escape_string(PARA1, PARA2);
?>


Of ook wel:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
mysqli_real_escape_string($db, $_POST['waarde']);
?>


Volgens mij kan je dit btw ook op google vinden...
 
Jurgen de Brouwer

Jurgen de Brouwer

21/11/2014 14:50:29
Quote Anchor link
Peter bedankt voor je reactie.
Wat denk je dat ik al 3 uur aan het doen ben?
Ik zeg GOOGLe weet alles.
Maar ik kon het effe niet vinden.
Bedankt
 



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.