Beste,
ik heb een probleem.
De bedoeling is dat er een zoekformulier komt waar personen gevonden kunnen worden in het database ook moet deze van deze personen hun naam bijv verandert kunnen worden.
De zoekfunctie en weergeef functie werkt op dit moment goed alleen het update van de namen enzo werkt niet, ik heb veel optie al geprobeert maar kom er maar niet uit mischien dat jullie weten waarom.
mvg,
Wesley
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
if(isset($_POST['submit']))
{
$sql = "SELECT * FROM inschrijving
WHERE inschrijfnummer LIKE '%$HTTP_POST_VARS[zoekterm]%'
OR voornaam LIKE '%$HTTP_POST_VARS[zoekterm]%'
OR achternaam LIKE '%$HTTP_POST_VARS[zoekterm]%'
OR woonplaats LIKE '%$HTTP_POST_VARS[zoekterm]%'
OR Geboortedatum LIKE '%$HTTP_POST_VARS[zoekterm]%'
OR adres LIKE '%$HTTP_POST_VARS[zoekterm]%'
OR postcode LIKE '%$HTTP_POST_VARS[zoekterm]%'
OR mobielnummer LIKE '%$HTTP_POST_VARS[zoekterm]%'
OR medicijnen LIKE '%$HTTP_POST_VARS[zoekterm]%'
OR emailadresouders LIKE '%$HTTP_POST_VARS[zoekterm]%'
OR categoriegroep LIKE '%$HTTP_POST_VARS[zoekterm]%'";
$res = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($res) >= 1)
{
$rij = mysql_fetch_assoc($res);
$inschrijfnummer = $rij['inschrijfnummer'];
$voornaam = $rij['voornaam'];
$achternaam = $rij['achternaam'];
$adres = $rij['adres'];
$postcode = $rij['postcode'];
$woonplaats = $rij['woonplaats'];
$mobielnummer = $rij['mobielnummer'];
$telefoonnummer = $rij['telefoonnummer'];
$Geboortedatum = $rij['Geboortedatum'];
$jongen = $rij['Jongenmeisje'];
$medicijnen = $rij['medicijnen'];
$dieet = $rij['dieet'];
$voorzorgen = $rij['voorzorgenjanee'];
$emailouders = $rij['emailadresouders'];
$emailbevestigin = $rij['bevestigingemail'];
$categorie = $rij['categorie'];
$categoriegroep = $rij['categoriegroep'];
$betaald = $rij['Betaaldjanee'];
echo '
<form method="POST" action="">
<table width="100%">
<tr>
<td width="40%">Inschrijf</td>
<td><input type="text" name="" value="' .$inschrijfnummer. '" size="30"></td>
</tr>
<tr>
<td width="40%">Voornaam</td>
<td><input type="text" name="voor" value="' .$voornaam. '" size="30"></td>
</tr>
<tr>
<td width="40%">Achternaam</td>
<td><input type="text" name="achter" value="' .$achternaam. '" size="30"></td>
</tr>
<tr>
<td width="40%">Adres</td>
<td><input type="text" name="adre" value="' .$adres. '" size="30"></td>
</tr>
<tr>
<td width="40%">Postcode</td>
<td><input type="text" name="postc" value="' .$postcode. '" size="30"></td>
</tr>
<tr>
<td width="40%">Woonplaats</td>
<td><input type="text" name="woonpl" value="' .$woonplaats. '" size="30"></td>
</tr>
<tr>
<td width="40%">mobielnummer</td>
<td><input type="text" name="mobielnum" value="' .$mobielnummer. '" size="30"></td>
</tr>
<tr>
<td width="40%">telefoonnummer</td>
<td><input type="text" name="telefoonnu" value="' .$telefoonnummer. '" size="30"></td>
</tr>
<tr>
<td width="40%">Geboortedatum</td>
<td><input type="text" name="geboorteda" value="' .$Geboortedatum. '" size="30"></td>
</tr>
<tr>
<td width="40%">Jongen of meisje</td>
<td><input type="text" name="jongenofmeis" value="' .$jongen. '" size="30"></td>
</tr>
<tr>
<tr>
<td width="40%">Medicijnen</td>
<td><input type="text" name="midicijn" value="' .$medicijnen. '" size="30"></td>
</tr>
<tr>
<td width="40%">Dieet</td>
<td><input type="text" name="diee" value="' .$dieet. '" size="30"></td>
</tr>
<tr>
<td width="40%">Voorzorgen ja/nee</td>
<td><input type="text" name="voorzorg" value="' .$voorzorgen. '" size="30"></td>
</tr>
<tr>
<td width="40%">Email ouders</td>
<td><input type="text" name="email" value="' .$emailouders. '" size="30"></td>
</tr>
<tr>
<td width="40%">Bevestiging email</td>
<td><input type="text" name="emailbev" value="' .$emailbevestigin. '" size="30"></td>
</tr>
<tr>
<td width="40%">Categorie</td>
<td><input type="text" name="categor" value="' .$categorie. '" size="30"></td>
</tr>
<tr>
<td width="40%">Categorie groep</td>
<td><input type="text" name="categoriegro" value="' .$categoriegroep. '" size="30"></td>
</tr>
<tr>
<td width="40%">Betaald ja/nee</td>
<td><input type="text" name="17" value="ja" size="30"></td>
</tr>
<tr>
<td width="40%"></td>
<td><input type="submit" name="opslaan" value="Wijziging opslaan"></td>
</tr>
</table>
</form>
<span class="article_separator"> </span>';
}
else{
echo 'U zoekopdracht kon niet worden gevonden of er zijn teveel resultaten en u moet specifieker wezen!</b><span class="article_separator"> </span>'; }
}
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
$voor = $_post['voor'];
$achter = $_post['achter'];
$adre = $_post['adre'];
$postc = $_post['postc'];
$woonpl = $_post['woonpl'];
$mobielnum = $_post['mobielnum'];
$geboorteda = $_post['geboorteda'];
$jongenofmeis = $_post['jongenofmeis'];
$midicijn = $_post['midicijn'];
$diee = $_post['diee'];
$voorzorg = $_post['voorzorg'];
$email = $_post['email'];
$emailbev = $_post['emailbev'];
$categor = $_post['categor'];
$categoriegro = $_post['categoriegro'];
if(isset($_POST['opslaan']))
{
$sqlcode="UPDATE inschrijving SET
voornaam='". $voor ."',
achternaam='". $achter ."',
adres='". $adre ."',
postcode='". $postc ."',
woonplaats='". $woonpl ."',
mobielnummer='". $mobielnum ."',
telefoonnummer='". $telefoonnu ."',
Geboortedatum='". $geboorteda ."',
Jongenmeisje='". $jongenofmeis ."',
medicijnen='". $midicijn ."',
dieet='". $diee ."',
voorzorgenjanee='". $voorzorg ."',
emailadresouders='". $email ."',
bevestigingemail='". $emailbev ."',
categorie='". $categor ."',
categoriegroep='". $categoriegro ."'
WHERE inschrijfnummer='". $inschrijfnummer ."'";
$resultaat=mysql_query($sqlcode)or die(mysql_error());
echo 'gelukt';
}
}
}
?>
- hulp nodig met php
-
15-04-2010, 13:27 #1
- Berichten
- 145
- Lid sinds
- 18 Jaar
hulp nodig met php
-
-
15-04-2010, 13:36 #2
- Berichten
- 263
- Lid sinds
- 18 Jaar
zo ff vlug gekeken, ondanks dat je script niet veilig is maar daar zullen andere je wel op wijzen.
je doet if (isset($_POST['opslaan']) {
}
maar die is dus nergens gezet... voeg zoiets in je form toe:
<input type="hidden" value="ja" name="opslaan" />
tevens heb je geen action gezet in je form
action="" vul hier het php adres in dat de actie moet uitvoeren (in dit geval is dit hetzelfde url als waar de form zich bevind, dit kun je hard erin zetten met action="mijnurl.php" maar mooier en handiger is om $_SERVER['PHP_SELF'] te gebruiken)Laatst aangepast door Alexander Mes : 15-04-2010 om 13:44
-
15-04-2010, 14:29 #3
- Berichten
- 145
- Lid sinds
- 18 Jaar
Alex die opslaan staat er wel in
hij geeft ook gewoon weer dat gelukt is
maar hij slaat het niet op in het database.
mvg,
Wesley
-
15-04-2010, 15:12 #4
- Berichten
- 263
- Lid sinds
- 18 Jaar
doe eens je query echoen, en die dan uitvoeren in phpmyadmin... misschien is er toch iets mis met je query.
-
15-04-2010, 17:43 #5
- Berichten
- 2
- Lid sinds
- 15 Jaar
Probeer eens $_POST in plaats van $_post!
-
15-04-2010, 21:36 #6
- Berichten
- 145
- Lid sinds
- 18 Jaar
hoi
Jongens.
Beide geprobeert werkt ook niet begrijp er nu niks meer van ben er nog niet uit.
mvg,
Wesley
-
15-04-2010, 21:58 #7
- Berichten
- 263
- Lid sinds
- 18 Jaar
wat krijg je als je
echo $sqlcode;
doet?
-
15-04-2010, 22:17 #8
Elephant Media GbR
- Berichten
- 1.253
- Lid sinds
- 18 Jaar
Foutje , Moet beter kijken..
Aanvullend bericht:
telefoonnummer='". $telefoonnu ."',
De var $telefoonnu bestaat niet ? kan dat kloppen ?Laatst aangepast door Stefan Visser : 15-04-2010 om 22:23 Reden: Automatisch samengevoegd.
-
15-04-2010, 23:19 #9
- Berichten
- 263
- Lid sinds
- 18 Jaar
dat maakt nie uit, als hij niet bestaat dan is het gewoon leeg (NULL). Ik denk dat zn query fout is, niet technisch fout want er komt geen error maar denk aan lege velden. maar dan moet hij zn query even laten zien wanneer die gewoon door de php ge-echod wordt.
-
16-04-2010, 09:20 #10
- Berichten
- 145
- Lid sinds
- 18 Jaar
gelukt
Hey,
Alex bedankt door je code kwam ik erachter dat de inschrijf nummer niet werd gepost door wat aanpassen
wordt die nu wel gepost en werkt het script perfect nu bedankt :)
-
16-04-2010, 09:54 #11
- Berichten
- 263
- Lid sinds
- 18 Jaar
altijd goed om te zien dat mensen het zelf oplossen, of proberen met wat tips.
hoewel ik het eerder zei, maar niemand anders je erop wees (wat ik wel verwacht had). Je script is niet veilig, mensen die handig zijn en kwaad willen doen kunnen dingen in je database uithalen die jij niet wilt (denk aan data verwijderen, inloggen zonder juist wachtwoord, etc.)... dit komt omdat jij rechtstreeks de $_POST data de database inschiet zonder deze te controleren (op hacks/foefjes).
kijk hier voor meer uitleg hierover (ook wel MySQL Injection genoemd) http://www.tizag.com/mysqlTutorial/m...-injection.php
succes
-
16-04-2010, 10:53 #12
- Berichten
- 145
- Lid sinds
- 18 Jaar
Yep, Dit is zelf een school project dus hoeft er niet veel op beveiliging gelet te worden
maar zal de pagina wel door lezen en er wat mee gaan doen.
Bedankt.
-
16-04-2010, 10:58 #13
- Berichten
- 2
- Lid sinds
- 15 Jaar
Als we dan toch bezig zijn, waarom niet gelijk goed?
Zie ook vaak dat er op scholen PHP en SQL wordt aangeleerd maar dan echt maar voor de helft.
Ook voor jezelf:
- Beveiligen
- Letten op CAPS
- Inspringen - zeker voor de leesbaarheid!
'T is een kleine moeite en het geeft je uiteindelijk groot plezier!
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic