Hulp nodig met $_POST
ik krijg een error ( geen wonder want de code is fout )
if($_POST["'".$del['id']."'"] == "on"){
hoe kan ik de post juist maken zo dat de " en de ' ook juist zijn ?
alvast bedankt
if($_POST["'".$del['id']."'"] == "on"){
hoe kan ik de post juist maken zo dat de " en de ' ook juist zijn ?
alvast bedankt
Gewijzigd op 25/11/2011 11:12:45 door Chris -
gewoon alle " in de $_POST weghalen?
sorry ik zag de enkele niet
maar werkt dit niet?
$_POST["$del[\'id\']"]
sorry ik zag de enkele niet
maar werkt dit niet?
$_POST["$del[\'id\']"]
Gewijzigd op 16/11/2011 19:32:13 door Jeroen VD
Kijk goed naar de verschillen en je snapt het denk ik wel.
verzin voortaan trouwens een betere titel voor je topic's
ok
ik wist dat het fout was maar ik wist niet hoe ik het op kon lossen
bedankt
Toevoeging op 16/11/2011 19:34:01:
ik heb nog steeds een fout met de []
ik wist dat het fout was maar ik wist niet hoe ik het op kon lossen
bedankt
Toevoeging op 16/11/2011 19:34:01:
ik heb nog steeds een fout met de []
@eddy, als $del['id'] een string is, zal deze toch tussen "" moeten staan?
Fatal error: Cannot use object of type stdClass as array
werkt dit niet? (weet niet of zoeits werkt)
$_POST[($del['id'])]
$_POST[($del['id'])]
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST') {
if($_POST['actie'] == "klaar") {
$pakleden = mysql_query("SELECT * FROM leningen WHERE geleend_bij = '".mysql_real_escape_string($id_ingelogd)."' and id_lener = '".mysql_real_escape_string($id_lener)."'");
while($del = mysql_fetch_object($pakleden)){
if ($_POST[$del['id']] == 'on') {
echo $email;
mysql_query("UPDATE leningen SET status_lening = 2 WHERE id='".$_POST[$del['id']]."'") or die("Mislukt.");
}
}
}
}
?>
if($_SERVER['REQUEST_METHOD'] == 'POST') {
if($_POST['actie'] == "klaar") {
$pakleden = mysql_query("SELECT * FROM leningen WHERE geleend_bij = '".mysql_real_escape_string($id_ingelogd)."' and id_lener = '".mysql_real_escape_string($id_lener)."'");
while($del = mysql_fetch_object($pakleden)){
if ($_POST[$del['id']] == 'on') {
echo $email;
mysql_query("UPDATE leningen SET status_lening = 2 WHERE id='".$_POST[$del['id']]."'") or die("Mislukt.");
}
}
}
}
?>
Gewijzigd op 16/11/2011 19:36:06 door php knipper
Probeer meet met tabs te werken om een overzicht te krijgen en beveilig je script wat beter.
Gewijzigd op 16/11/2011 19:40:27 door Eddy B
@eddy, soms als je een script kopieert dan worden tabs
verwijderd (net als hier)
als je mysql_fetch_object() veranderd in mysql_fetch_array(), werkt hij dan niet?
verwijderd (net als hier)
als je mysql_fetch_object() veranderd in mysql_fetch_array(), werkt hij dan niet?
Gewijzigd op 16/11/2011 19:41:25 door Jeroen VD
Ik heb zelf object(); array(); en assocs(); gebenchmarkt en daaruit kwam mysql_fetch_assocs(); als de snelste en efficiëntste, dus die raad ik aan.
@jeroen, een antwoord op al je vragen:
Inderdaad, maar $del['id'] is geen string maar een variabele. Alleen directe strings moeten tussen quotes (en dan ook het liefst nog single quotes), dus:
Zodra je iets tussen code tags zet is dit niet zo.
@TS,
1) Je hebt het al gelijk in de titel. Wat een rare post
2) Verzin een betere titel een echte samenvatting
3) Wat heb je al bereikt?
4) Wat is de foutmelding?
5) De rest van het standaard rijtje dat al 100x aan je verteld is...
Quote:
als $del['id'] een string is, zal deze toch tussen "" moeten staan?
Inderdaad, maar $del['id'] is geen string maar een variabele. Alleen directe strings moeten tussen quotes (en dan ook het liefst nog single quotes), dus:
Code (php)
1
2
3
4
2
3
4
$naam = 'jeroen'; // Jeroen is een string, tussen tussen quotes
echo $naam; // Naam is een variabele, dus zonder quotes
$users = Array('jeroen', 'eddy', 'wouter'); // De namen zijn strings, dus tussen quotes
var_dump($users); // $users is een variabele, dus zonder quotes
echo $naam; // Naam is een variabele, dus zonder quotes
$users = Array('jeroen', 'eddy', 'wouter'); // De namen zijn strings, dus tussen quotes
var_dump($users); // $users is een variabele, dus zonder quotes
Quote:
soms als je een script kopieert dan worden tabs verwijderd (net als hier)
Zodra je iets tussen code tags zet is dit niet zo.
@TS,
1) Je hebt het al gelijk in de titel. Wat een rare post
2) Verzin een betere titel een echte samenvatting
3) Wat heb je al bereikt?
4) Wat is de foutmelding?
5) De rest van het standaard rijtje dat al 100x aan je verteld is...
ok nu is de code aangepast ( ben al zoon 3 keer opnieuw begonnen )
de code van het vakje
helaas doet hij niet's
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST') {
while($controle = mysql_fetch_array($req)) {
if(isset($_POST[$controle['id']]) && $_POST[$controle['id']] == '1') {
if ($_POST['actie'] == 'klaar') {
$sql = mysql_query("UPDATE leningen SET status_lening = 2 WHERE id='".mysql_real_escape_string($controle['id'])."';");
if (!$sql) {
('SQL error: ' . mysql_error());
} else {
$terug_tijd = date('d-m-o G:i:s');
$sql1 = mysql_query("UPDATE leningen SET terug = '".$terug_tijd."' WHERE id='".mysql_real_escape_string($controle['id'])."';");
}
}
}
}
}
?>
if($_SERVER['REQUEST_METHOD'] == 'POST') {
while($controle = mysql_fetch_array($req)) {
if(isset($_POST[$controle['id']]) && $_POST[$controle['id']] == '1') {
if ($_POST['actie'] == 'klaar') {
$sql = mysql_query("UPDATE leningen SET status_lening = 2 WHERE id='".mysql_real_escape_string($controle['id'])."';");
if (!$sql) {
('SQL error: ' . mysql_error());
} else {
$terug_tijd = date('d-m-o G:i:s');
$sql1 = mysql_query("UPDATE leningen SET terug = '".$terug_tijd."' WHERE id='".mysql_real_escape_string($controle['id'])."';");
}
}
}
}
}
?>
de code van het vakje
helaas doet hij niet's
Gewijzigd op 16/11/2011 21:03:23 door php knipper
waar haal je $dnn vandaan?
Code (php)
1
2
3
4
2
3
4
<?php
$sql = mysql_query("UPDATE leningen SET status_lening = 2 WHERE id='".mysql_real_escape_string($controle['id'])."';");
$sql1 = mysql_query("UPDATE leningen SET terug = '".$terug_tijd."' WHERE id='".mysql_real_escape_string($controle['id'])."';");
?>
$sql = mysql_query("UPDATE leningen SET status_lening = 2 WHERE id='".mysql_real_escape_string($controle['id'])."';");
$sql1 = mysql_query("UPDATE leningen SET terug = '".$terug_tijd."' WHERE id='".mysql_real_escape_string($controle['id'])."';");
?>
Die ; hoeft niet in je query's te staan
Victor - op 17/11/2011 00:19:37:
waar haal je $dnn vandaan?
van de query die alle gegevens uit de database haalt en ze door een wile weergeeft
ik heb de ; eruit gehaalt helaas nog geen post
Ik heb niet alles bekeken maar is het zo dat jij in het formulier namen hebt (name="...") die alleen uit cijfers bestaan? Dat gaat dan niet werken.
dat is wel hoe het werkt.
in name staat het id van dat attributie.
hoe kan ik er voor zorgen dat het wel werkt en warom werkt het niet?
in name staat het id van dat attributie.
hoe kan ik er voor zorgen dat het wel werkt en warom werkt het niet?
Maak er bijvoorbeeld dit van (let op de naam):
Je verwerking kan er dan zo uitzien:
Je verwerking kan er dan zo uitzien:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST') {
while($controle = mysql_fetch_array($req)) {
if(isset($_POST['row-'.$controle['id']]) && $_POST['row-'.$controle['id']] == '1') {
if ($_POST['actie'] == 'klaar') {
$sql = mysql_query("UPDATE leningen SET status_lening = 2 WHERE id='".mysql_real_escape_string($controle['id'])."'");
if (!$sql) {
('SQL error: ' . mysql_error());
} else {
$terug_tijd = date('d-m-o G:i:s');
$sql1 = mysql_query("UPDATE leningen SET terug = '".$terug_tijd."' WHERE id='".mysql_real_escape_string($controle['id'])."'");
}
}
}
}
}
?>
if($_SERVER['REQUEST_METHOD'] == 'POST') {
while($controle = mysql_fetch_array($req)) {
if(isset($_POST['row-'.$controle['id']]) && $_POST['row-'.$controle['id']] == '1') {
if ($_POST['actie'] == 'klaar') {
$sql = mysql_query("UPDATE leningen SET status_lening = 2 WHERE id='".mysql_real_escape_string($controle['id'])."'");
if (!$sql) {
('SQL error: ' . mysql_error());
} else {
$terug_tijd = date('d-m-o G:i:s');
$sql1 = mysql_query("UPDATE leningen SET terug = '".$terug_tijd."' WHERE id='".mysql_real_escape_string($controle['id'])."'");
}
}
}
}
}
?>
Gewijzigd op 21/11/2011 20:25:01 door Mar cel
een haakje te veel onderaan
hij doet nog steeds niets? hoe kan dat nu?
bedankt voor de poging
hij doet nog steeds niets? hoe kan dat nu?
bedankt voor de poging
Nogmaals wat Aar zegt:
Een name attribute mag niet alleen uit cijfers bestaan, het moet sowieso beginnen met een letter.
En daarnaast moet je nog steeds je topic titel aanpassen, dit is al meerdere keren gevraagd.
Een name attribute mag niet alleen uit cijfers bestaan, het moet sowieso beginnen met een letter.
En daarnaast moet je nog steeds je topic titel aanpassen, dit is al meerdere keren gevraagd.




