$query = mysql_query("SELECT
hallo
ik probeer data uit de database te halen doormiddel van dit scriptje
<script>
</script>
en met dit formulier
<html>
<head>
</head>
<body>
<form method="post" action="readv.php">
<label>Id </label>
<input name="id" placeholder="Voer id in" autofocus id="id">
<input id="submit" name="submit" type="submit" value="Submit">
</form>
</body>
</html>
Als ik het dan uitvoer krijg ik de echo: geen data gevonden
Als ik de query verander in WHERE Id=123 dan krijg ik wel de inhoud. De vraag is dus hoe werk ik met een $post in een query?
ik probeer data uit de database te halen doormiddel van dit scriptje
<script>
Code (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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php //readv.php
if($_SERVER['REQUEST_METHOD'] == 'POST'){ // Controle of er op de knop is geklikt.
include 'config/connect.php'; // Connectie db.
$query = mysql_query("SELECT * FROM lijst WHERE id=" . mysql_real_escape_string($_POST['id']));
$res = mysql_query($query);
if ($res && mysql_num_rows($res) >= 1)
{
while ($row = mysql_fetch_array($res))
{
echo 'id: '.$row['id'].'<br>'.' titel: '.$row['titel'].'<br>'.'locatie: '.$row['locatie'].'<br>'.'plaats: '.$row['plaats'].'<br>'.'provincie: '.$row['provincies'].'<br>'.'land: '.$row['land'].'<br>';
}
} else {
echo 'Geen data gevonden';
}
}
?>
if($_SERVER['REQUEST_METHOD'] == 'POST'){ // Controle of er op de knop is geklikt.
include 'config/connect.php'; // Connectie db.
$query = mysql_query("SELECT * FROM lijst WHERE id=" . mysql_real_escape_string($_POST['id']));
$res = mysql_query($query);
if ($res && mysql_num_rows($res) >= 1)
{
while ($row = mysql_fetch_array($res))
{
echo 'id: '.$row['id'].'<br>'.' titel: '.$row['titel'].'<br>'.'locatie: '.$row['locatie'].'<br>'.'plaats: '.$row['plaats'].'<br>'.'provincie: '.$row['provincies'].'<br>'.'land: '.$row['land'].'<br>';
}
} else {
echo 'Geen data gevonden';
}
}
?>
</script>
en met dit formulier
<html>
<head>
</head>
<body>
<form method="post" action="readv.php">
<label>Id </label>
<input name="id" placeholder="Voer id in" autofocus id="id">
<input id="submit" name="submit" type="submit" value="Submit">
</form>
</body>
</html>
Als ik het dan uitvoer krijg ik de echo: geen data gevonden
Als ik de query verander in WHERE Id=123 dan krijg ik wel de inhoud. De vraag is dus hoe werk ik met een $post in een query?
Gewijzigd op 23/03/2013 18:11:44 door Ray de graaf
Ik denk dat er een foutje in je query zit:
Verander dit:
Door:
En ik zou ook een foutafhandeling inbouwen.
Zie ook deze link: http://www.phphulp.nl/php/tutorial/data-verwerking/foutafhandeling-query-sql/735/voorbeeld-1-het-ophalen-van-gegevens/1931/
Verander dit:
Code (php)
1
$query = mysql_query("SELECT * FROM lijst WHERE id=" . mysql_real_escape_string($_POST['id']));
Door:
Code (php)
1
2
3
4
2
3
4
$query = "SELECT *
FROM lijst
WHERE id='".mysql_real_escape_string($_POST['id'])."'
";
FROM lijst
WHERE id='".mysql_real_escape_string($_POST['id'])."'
";
En ik zou ook een foutafhandeling inbouwen.
Zie ook deze link: http://www.phphulp.nl/php/tutorial/data-verwerking/foutafhandeling-query-sql/735/voorbeeld-1-het-ophalen-van-gegevens/1931/
Gewijzigd op 23/03/2013 18:15:07 door - Diov -
dankje! ik ga die tut eens bekijken! de tut voor foutafhandeling heb ik geprint en ligt voor me snuffert! tnks!
Toevoeging op 23/03/2013 19:50:36:
het is gelukt
nu heb ik weer een probleem met de update variant mijn query is daarvoor:
$query = mysql_query ("UPDATE events SET (titel,datum,provincies,locatie,land,plaats,soort,deuropen,deurdicht,prijs,leeftijd)
VALUES
('". $titel ."',
'". $datum ."',
'". $provincies ."',
'". $locatie ."',
'". $land ."',
'". $plaats ."',
'". $soort ."',
'".$deuropen."',
'". $deurdicht ."',
'". $prijs."',
'". $leeftijd."')
WHERE id='".mysql_real_escape_string($_POST['id'])."'");
ik heb een formulier:
<form method="post" action="update_eventv.php">
<label>ID</label>
<input name="id" value="" id="id"><br />
<label>Datum</label>
<input name="datum" value="" id="datum"><br />
<label>Titel</label>
<input name="titel" type="text" value="" id="titel" maxlength="30">
<label>Locatie</label>
<input name="locatie" value="" id="locatie"><br />
<label>Plaats</label>
<input name="plaats" type="text" value="" id="plaats" maxlength="30">
<label>Provincie</label>
<input name="provincies" value="" id="provincies"><br />
<label>Land</label>
<input name="land" type="text" value="" id="land" maxlength="30">
<label>Soort</label>
<input name="soort" value="" id="soort"><br />
<label>Deur open</label>
<input name="deuropen" type="text" value="" id="deuropen" maxlength="30">
<label>Deur dicht</label>
<input name="deurdicht" value="" id="deurdicht"><br />
<label>Prijs</label>
<input name="prijs" type="text" value="" id="prijs" maxlength="30">
<label>Leeftijd</label>
<input name="leeftijd" value="" id="leeftijd"><br />
<input id="submit" name="submit" type="submit" value="Submit"><br><br>
</form>
die deze code gebruikt:
</script>
ik heb echt moeite met querys in combinatie met $_post GRRR
Toevoeging op 23/03/2013 19:50:36:
- Diov - op 23/03/2013 18:14:11:
Ik denk dat er een foutje in je query zit:
Verander dit:
Door:
En ik zou ook een foutafhandeling inbouwen.
Zie ook deze link: http://www.phphulp.nl/php/tutorial/data-verwerking/foutafhandeling-query-sql/735/voorbeeld-1-het-ophalen-van-gegevens/1931/
Verander dit:
Code (php)
1
$query = mysql_query("SELECT * FROM lijst WHERE id=" . mysql_real_escape_string($_POST['id']));
Door:
Code (php)
1
2
3
4
2
3
4
$query = "SELECT *
FROM lijst
WHERE id='".mysql_real_escape_string($_POST['id'])."'
";
FROM lijst
WHERE id='".mysql_real_escape_string($_POST['id'])."'
";
En ik zou ook een foutafhandeling inbouwen.
Zie ook deze link: http://www.phphulp.nl/php/tutorial/data-verwerking/foutafhandeling-query-sql/735/voorbeeld-1-het-ophalen-van-gegevens/1931/
het is gelukt
nu heb ik weer een probleem met de update variant mijn query is daarvoor:
$query = mysql_query ("UPDATE events SET (titel,datum,provincies,locatie,land,plaats,soort,deuropen,deurdicht,prijs,leeftijd)
VALUES
('". $titel ."',
'". $datum ."',
'". $provincies ."',
'". $locatie ."',
'". $land ."',
'". $plaats ."',
'". $soort ."',
'".$deuropen."',
'". $deurdicht ."',
'". $prijs."',
'". $leeftijd."')
WHERE id='".mysql_real_escape_string($_POST['id'])."'");
ik heb een formulier:
<form method="post" action="update_eventv.php">
<label>ID</label>
<input name="id" value="" id="id"><br />
<label>Datum</label>
<input name="datum" value="" id="datum"><br />
<label>Titel</label>
<input name="titel" type="text" value="" id="titel" maxlength="30">
<label>Locatie</label>
<input name="locatie" value="" id="locatie"><br />
<label>Plaats</label>
<input name="plaats" type="text" value="" id="plaats" maxlength="30">
<label>Provincie</label>
<input name="provincies" value="" id="provincies"><br />
<label>Land</label>
<input name="land" type="text" value="" id="land" maxlength="30">
<label>Soort</label>
<input name="soort" value="" id="soort"><br />
<label>Deur open</label>
<input name="deuropen" type="text" value="" id="deuropen" maxlength="30">
<label>Deur dicht</label>
<input name="deurdicht" value="" id="deurdicht"><br />
<label>Prijs</label>
<input name="prijs" type="text" value="" id="prijs" maxlength="30">
<label>Leeftijd</label>
<input name="leeftijd" value="" id="leeftijd"><br />
<input id="submit" name="submit" type="submit" value="Submit"><br><br>
</form>
die deze code gebruikt:
Code (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
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
<?php
ini_set('display_errors',0); // 1 == aan , 0 == uit
error_reporting(E_ALL | E_STRICT);
if($_SERVER['REQUEST_METHOD'] == 'POST'){ // Controle of er op de knop is geklikt.
include_once 'config/connect.php'; // Connectie db.
//Data veilig maken voor sql injectie d.m.v. mysql_real.....
$titel = mysql_real_escape_string($_POST['titel']);
$datum = mysql_real_escape_string($_POST['datum']);
$provincies = mysql_real_escape_string($_POST['provincies']);
$locatie = mysql_real_escape_string($_POST['locatie']);
$plaats = mysql_real_escape_string($_POST['plaats']);
$land = mysql_real_escape_string($_POST['land']);
$soort = mysql_real_escape_string($_POST['soort']);
$deuropen = mysql_real_escape_string($_POST['deuropen']);
$deurdicht = mysql_real_escape_string($_POST['deurdicht']);
$prijs= mysql_real_escape_string($_POST['prijs']);
$leeftijd= mysql_real_escape_string($_POST['leeftijd']);
$query = mysql_query ("UPDATE events SET (titel,datum,provincies,locatie,land,plaats,soort,deuropen,deurdicht,prijs,leeftijd) VALUES ('". $titel ."','". $datum ."','". $provincies ."','". $locatie ."','". $land ."','". $plaats ."','". $soort ."', '".$deuropen."','". $deurdicht ."','". $prijs."','". $leeftijd."') WHERE id='".mysql_real_escape_string($_POST['id'])."'
"); // Gebruiker in db plaatsen.
if(!$query) {
echo "Error: " . mysql_error();
}
else {
echo 'Je gegevens zijn opgeslagen in de database' . '<br><br><hr>';
}
}
?>
ini_set('display_errors',0); // 1 == aan , 0 == uit
error_reporting(E_ALL | E_STRICT);
if($_SERVER['REQUEST_METHOD'] == 'POST'){ // Controle of er op de knop is geklikt.
include_once 'config/connect.php'; // Connectie db.
//Data veilig maken voor sql injectie d.m.v. mysql_real.....
$titel = mysql_real_escape_string($_POST['titel']);
$datum = mysql_real_escape_string($_POST['datum']);
$provincies = mysql_real_escape_string($_POST['provincies']);
$locatie = mysql_real_escape_string($_POST['locatie']);
$plaats = mysql_real_escape_string($_POST['plaats']);
$land = mysql_real_escape_string($_POST['land']);
$soort = mysql_real_escape_string($_POST['soort']);
$deuropen = mysql_real_escape_string($_POST['deuropen']);
$deurdicht = mysql_real_escape_string($_POST['deurdicht']);
$prijs= mysql_real_escape_string($_POST['prijs']);
$leeftijd= mysql_real_escape_string($_POST['leeftijd']);
$query = mysql_query ("UPDATE events SET (titel,datum,provincies,locatie,land,plaats,soort,deuropen,deurdicht,prijs,leeftijd) VALUES ('". $titel ."','". $datum ."','". $provincies ."','". $locatie ."','". $land ."','". $plaats ."','". $soort ."', '".$deuropen."','". $deurdicht ."','". $prijs."','". $leeftijd."') WHERE id='".mysql_real_escape_string($_POST['id'])."'
"); // Gebruiker in db plaatsen.
if(!$query) {
echo "Error: " . mysql_error();
}
else {
echo 'Je gegevens zijn opgeslagen in de database' . '<br><br><hr>';
}
}
?>
</script>
ik heb echt moeite met querys in combinatie met $_post GRRR
Gewijzigd op 23/03/2013 19:52:50 door ray de graaf
Je probleem heeft niets te maken met die post array, maar gewoon met het feit dat je blijkbaar geen updat queries kunt schrijven. Want je nu doet is de insert syntax gebruiken in een update query. De correcte syntax is:




