xampp hoe werkt dat
Het kan net zo goed een fout gekozen database of een verkeerde connectie zijn, of een niet correcte SQL-structuur waar het script de handdoek voor in de ring legt... De foutmelding geeft de doorslag.
Warning: mysql_db_query(): supplied argument is not a valid MySQL-Link resource in C:\wamp\www\adressenlijst\admin\aanpassen.php on line 8
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\adressenlijst\admin\aanpassen.php on line 17
Warning: mysql_num_fields(): supplied argument is not a valid MySQL result resource in C:\wamp\www\adressenlijst\admin\aanpassen.php on line 18
Notice: Use of undefined constant updaten - assumed 'updaten' in C:\wamp\www\adressenlijst\admin\aanpassen.php on line 39
Notice: Use of undefined constant upid - assumed 'upid' in C:\wamp\www\adressenlijst\admin\aanpassen.php on line 72
Notice: Undefined index: upid in C:\wamp\www\adressenlijst\admin\aanpassen.php on line 72
Hier aanpassen.php
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
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
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
<?php
include("../includes/header.php");
include("../includes/db_adreslijst.php");
$mysql_id=mysql_connect("$dbhost","$dbuser","$dbpass");
$sql="select * from adressen";
$res=mysql_db_query("$db", "$sql","$mysql_id");
$fout=mysql_errno($mysql_id);
if ($fout != 0) {
$fout=mysql_error($mysql_id);
echo '<font color="#FF2306">' . $fout . '</font>';
mysql_close($mysql_id);
echo '</body></html>';
exit;
}
$aantal_lijnen=mysql_num_rows($res);
$aantal_velden=mysql_num_fields($res);
echo "<br><br>";
echo '<table border=2 celpadding=2 width="80%">';
for($i=0;$i<$aantal_velden;$i++) {
printf("<th bgcolor=\"orange\"><font size=\"2\">%s</th>",mysql_field_name($res,$i));
}
echo "<th bgcolor=\"orange\"><font size=\"2\">Update</th>"; #veranderd
for($i=0;$i<$aantal_lijnen;$i++) {
$row=mysql_fetch_row($res);
echo '<tr>';
foreach($row as $col) {
$upid=$row[0]; #veranderd
if(!$col) $col=" ";
echo "<td align=\"left\"><font size=\"2\"><font size=\"2\"><font size=\"2\">$col</td>";
}
echo "<td align=\"center\"><font size=\"2\"><a href=\"aanpassen.php?upid=$upid\">Update</a></td></tr>"; #veranderd
}
echo "</table>";
echo '<br><br>';
if(isset($_POST[updaten])) {
$Naam=$_POST[Naam];
$Voornaam=$_POST[Voornaam];
$Geb_datum=$_POST[Geb_datum];
$Straat=$_POST[Straat];
$Nr=$_POST[Nr];
$Postcode=$_POST[Postcode];
$Plaats=$_POST[Plaats];
$Land=$_POST[Land];
$Telefoon=$_POST[Telefoon];
$Gsm=$_POST[Gsm];
$Email=$_POST[Email];
$upid=$_POST[upid];
$mysql_id=mysql_connect("$dbhost","$dbuser","$dbpass");
$sql="update adressen set Naam='$Naam',Voornaam='$Voornaam',Geb_datum='$Geb_datum',Straat='$Straat',Nr='$Nr',Postcode='$Postcode',Plaats='$Plaats',Land='$Land',Telefoon='$Telefoon',Gsm='$Gsm',Email='$Email' where id='$upid'" ;
$res=mysql_db_query("$db","$sql",$mysql_id);
$fout=mysql_errno($mysql_id);
if ($fout != 0) {
$fout=mysql_error($mysql_id);
echo '<font color="#FF2306">$fout</font>';
mysql_close($mysql_id);
echo '</body></html>';
exit;
}
else {
echo '<div align="left"><h3>De gegevens werden in de database aangepast</h4>
<p>Je wordt over 2 seconden naar je pagina gestuurd.</p>';
echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"1; URL=admin.php\">";
mysql_close($mysql_id);
exit;
}
}
$upid=$_GET[upid];
if(isset($upid)) {
$mysql_id=mysql_connect("$dbhost","$dbuser","$dbpass");
$sql="select * from adressen where id=$upid";
$res=mysql_db_query("$db","$sql",$mysql_id);
$row=mysql_fetch_row($res);
?>
<form action="<?php echo $_SERVER[PHP_SELF];?>" method="post">
<table>
<tr><td>Naam :</td><td><input type="text" name="Naam" size="40" value="<?php echo $row[1];?>"></td></tr>
<tr><td>Vooraam :</td><td><input type="text" name="Voornaam" size="40" value="<?php echo $row[2];?>"></td></tr>
<tr><td>Geboortedatum :</td><td><input type="text" name="Geb_datum" size="40" value="<?php echo $row[3];?>"></td></tr>
<tr><td>Straat :</td><td><input type="text" name="Straat" size="40" value="<?php echo $row[4];?>"></td></tr>
<tr><td>Nummer :</td><td><input type="text" name="Nr" size="40" value="<?php echo $row[5];?>"></td></tr>
<tr><td>Postcode :</td><td><input type="text" name="Postcode" size="40" value="<?php echo $row[6];?>"></td></tr>
<tr><td>Plaats :</td><td><input type="text" name="Plaats" size="40" value="<?php echo $row[7];?>"></td></tr>
<tr><td>Land :</td><td><input type="text" name="Land" size="40" value="<?php echo $row[8];?>"></td></tr>
<tr><td>Telefoon :</td><td><input type="text" name="Telefoon" size="40" value="<?php echo $row[9];?>"></td></tr>
<tr><td>Gsm :</td><td><input type="text" name="Gsm" size="40" value="<?php echo $row[10];?>"></td></tr>
<tr><td>E-mail :</td><td><input type="text" name="Email" size="40" value="<?php echo $row[11];?>"></td></tr>
<tr><td><input type="hidden" name="upid" value="<?php echo $upid;?>"></td></tr>
<tr><td> </td><td> </td></tr>
<tr><td><input type="submit" name="updaten" value="Gegevens updaten"></td></tr>
</table>
</form>
<?php
mysql_close($mysql_id);
}
else {
}
echo "<A HREF=\"javascript:javascript:history.go(-1)\">Terug</A>";
include("../includes/footer.php");
die ();
?>
include("../includes/header.php");
include("../includes/db_adreslijst.php");
$mysql_id=mysql_connect("$dbhost","$dbuser","$dbpass");
$sql="select * from adressen";
$res=mysql_db_query("$db", "$sql","$mysql_id");
$fout=mysql_errno($mysql_id);
if ($fout != 0) {
$fout=mysql_error($mysql_id);
echo '<font color="#FF2306">' . $fout . '</font>';
mysql_close($mysql_id);
echo '</body></html>';
exit;
}
$aantal_lijnen=mysql_num_rows($res);
$aantal_velden=mysql_num_fields($res);
echo "<br><br>";
echo '<table border=2 celpadding=2 width="80%">';
for($i=0;$i<$aantal_velden;$i++) {
printf("<th bgcolor=\"orange\"><font size=\"2\">%s</th>",mysql_field_name($res,$i));
}
echo "<th bgcolor=\"orange\"><font size=\"2\">Update</th>"; #veranderd
for($i=0;$i<$aantal_lijnen;$i++) {
$row=mysql_fetch_row($res);
echo '<tr>';
foreach($row as $col) {
$upid=$row[0]; #veranderd
if(!$col) $col=" ";
echo "<td align=\"left\"><font size=\"2\"><font size=\"2\"><font size=\"2\">$col</td>";
}
echo "<td align=\"center\"><font size=\"2\"><a href=\"aanpassen.php?upid=$upid\">Update</a></td></tr>"; #veranderd
}
echo "</table>";
echo '<br><br>';
if(isset($_POST[updaten])) {
$Naam=$_POST[Naam];
$Voornaam=$_POST[Voornaam];
$Geb_datum=$_POST[Geb_datum];
$Straat=$_POST[Straat];
$Nr=$_POST[Nr];
$Postcode=$_POST[Postcode];
$Plaats=$_POST[Plaats];
$Land=$_POST[Land];
$Telefoon=$_POST[Telefoon];
$Gsm=$_POST[Gsm];
$Email=$_POST[Email];
$upid=$_POST[upid];
$mysql_id=mysql_connect("$dbhost","$dbuser","$dbpass");
$sql="update adressen set Naam='$Naam',Voornaam='$Voornaam',Geb_datum='$Geb_datum',Straat='$Straat',Nr='$Nr',Postcode='$Postcode',Plaats='$Plaats',Land='$Land',Telefoon='$Telefoon',Gsm='$Gsm',Email='$Email' where id='$upid'" ;
$res=mysql_db_query("$db","$sql",$mysql_id);
$fout=mysql_errno($mysql_id);
if ($fout != 0) {
$fout=mysql_error($mysql_id);
echo '<font color="#FF2306">$fout</font>';
mysql_close($mysql_id);
echo '</body></html>';
exit;
}
else {
echo '<div align="left"><h3>De gegevens werden in de database aangepast</h4>
<p>Je wordt over 2 seconden naar je pagina gestuurd.</p>';
echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"1; URL=admin.php\">";
mysql_close($mysql_id);
exit;
}
}
$upid=$_GET[upid];
if(isset($upid)) {
$mysql_id=mysql_connect("$dbhost","$dbuser","$dbpass");
$sql="select * from adressen where id=$upid";
$res=mysql_db_query("$db","$sql",$mysql_id);
$row=mysql_fetch_row($res);
?>
<form action="<?php echo $_SERVER[PHP_SELF];?>" method="post">
<table>
<tr><td>Naam :</td><td><input type="text" name="Naam" size="40" value="<?php echo $row[1];?>"></td></tr>
<tr><td>Vooraam :</td><td><input type="text" name="Voornaam" size="40" value="<?php echo $row[2];?>"></td></tr>
<tr><td>Geboortedatum :</td><td><input type="text" name="Geb_datum" size="40" value="<?php echo $row[3];?>"></td></tr>
<tr><td>Straat :</td><td><input type="text" name="Straat" size="40" value="<?php echo $row[4];?>"></td></tr>
<tr><td>Nummer :</td><td><input type="text" name="Nr" size="40" value="<?php echo $row[5];?>"></td></tr>
<tr><td>Postcode :</td><td><input type="text" name="Postcode" size="40" value="<?php echo $row[6];?>"></td></tr>
<tr><td>Plaats :</td><td><input type="text" name="Plaats" size="40" value="<?php echo $row[7];?>"></td></tr>
<tr><td>Land :</td><td><input type="text" name="Land" size="40" value="<?php echo $row[8];?>"></td></tr>
<tr><td>Telefoon :</td><td><input type="text" name="Telefoon" size="40" value="<?php echo $row[9];?>"></td></tr>
<tr><td>Gsm :</td><td><input type="text" name="Gsm" size="40" value="<?php echo $row[10];?>"></td></tr>
<tr><td>E-mail :</td><td><input type="text" name="Email" size="40" value="<?php echo $row[11];?>"></td></tr>
<tr><td><input type="hidden" name="upid" value="<?php echo $upid;?>"></td></tr>
<tr><td> </td><td> </td></tr>
<tr><td><input type="submit" name="updaten" value="Gegevens updaten"></td></tr>
</table>
</form>
<?php
mysql_close($mysql_id);
}
else {
}
echo "<A HREF=\"javascript:javascript:history.go(-1)\">Terug</A>";
include("../includes/footer.php");
die ();
?>
Aangepast:
Codeblok is aangepast met juiste code-tags
Gewijzigd op 22/04/2013 01:29:45 door - Ariën -
- Variabelen horen buiten quotes
- Lijn 40 tot 51 zijn onnodig, je hebt al de beschikking op je $_POST variabelen
- Zorg voor goede foutafhandeling op je quaries met if-else en niet met die()
- Zet de teksten in de key van de $_POST variabelen tussen quotes, want het is een string (dus $_POST['Email'])
- Let op de data die je in de query's plaatst. $_POST $_GET en $_COOKIE zijn manipuleerbaar en je kan er een sql_injection mee uitvoeren. Gebruik dus php.net/mysql_reals_escape_string
- $_SERVER[PHP_SELF] is niet nodig, je kan de action ook leeglaten. In $_SERVER[PHP_SELF] (ook fout, omdat het eigenlijk tussen quotes hoort) zit al een XXS veiligheidslek,
- <font> is oude HTML-taal en dus afgeraden voor gebruik. Verdiep je eens in CSS
Houd ook in het achterhoofd dat de mysql_functies aan de kant gaan, dus verdiep je in mysqli. De opstap is overigens niet zo heel groot.
Als de bovenste opsomming aanpast moet het script beter werken.
Ik heb Wamp2.2 er weer op gezet en daarin krijg ik die fouten.
Alhoewel ik niet snap dat die wel werkt, want die maakt ook gebruik van Apache.
En ik ben niet zo'n held in php.
Ik heb dat jaren geleden toen php5 er nog maar net was van Serge.Terryn op essetee.be geplukt en dat werkte altijd met Windows XP tot mijn pc het een paar maanden geleden begaf en ik een tweede hands pc met Windows Vista heb gekocht en alle php bestanden van mijn oude schijf naar de nieuwe heb over gezet.
Het zal wel aan Vista liggen.
Want meer dan op internet naar wat (natuur)filmpjes kijken en te online pokeren kun je er niet mee.
hahahahaha
Gewijzigd op 22/04/2013 04:42:47 door Niek Kasius
Die foutmeldingen komen ook niet door Vista, maar door fouten in je script.
Ik heb die scripten niet veranderd, want ze werkte altijd goed met Windows XP het moet toch ergens aan liggen.
Bedankt voor die tip.
Ik die tutorial eens bekeken en door gevoerd in toevoegen.php en dat werkt prima.
En toch blijf ik het vreemd vinden dat ik steeds fout meldingen krijg, of helemaal niks te zien krijg in andere mappen met scripts, omdat het op mijn oude pc altijd gewerkt heeft onder Windows XP.
En nog iets vreemds is als ik de map includes open met wamp open die het script header.html en als ik wijzig in header.php is het niet meer zichtbaar alsof die niet bestaat terwijl footer.html wel zichtbaar is.
EN als ik nu aanpassen.php open krijg ik de volgende meldingen:
Notice: Use of undefined constant updaten - assumed 'updaten' in C:\wamp\www\adressenlijst\admin\aanpassen.php on line 41
Notice: Use of undefined constant upid - assumed 'upid' in C:\wamp\www\adressenlijst\admin\aanpassen.php on line 74
Notice: Undefined index: upid in C:\wamp\www\adressenlijst\admin\aanpassen.php on line 74
EN asl ik toch op de link Update klik krijg blijven de eerste 2 meldingen staan en is de form tabel gewoon zichtbaar kan ik wel wijzigen doorvoeren en word het in de database ook gewijzigt,
alleen krijg dan de volgende meldingen:
Notice: Use of undefined constant updaten - assumed 'updaten' in C:\wamp\www\adressenlijst\admin\aanpassen.php on line 41
Notice: Use of undefined constant naam - assumed 'naam' in C:\wamp\www\adressenlijst\admin\aanpassen.php on line 42
en alle andere inputs idem dito, en:
Notice: Use of undefined constant upid - assumed 'upid' in C:\wamp\www\adressenlijst\admin\aanpassen.php on line 53
Gewijzigd op 28/04/2013 07:57:56 door Niek Kasius
Als ik naar deze regel kijk:
Je moet Naam tussen (single-)quotes zetten, want het is immers een string.
Los daarvan vraag ik me af waarom je het in $Naam opslaat, want je $_POST variabele blijft immers behouden, waarmee je deze al in je script kan gebruiken.
Quote:
En nog iets vreemds is als ik de map includes open met wamp open die het script header.html en als ik wijzig in header.php is het niet meer zichtbaar alsof die niet bestaat terwijl footer.html wel zichtbaar is.
Niks geks aan, als je een bestandsnaam die je in een include gebruikt, van naam of extentie veranderd, dan moet dat ook in je include() gebeuren, want anders dan wordt hij niet geincludeerd ;-)
Gewijzigd op 28/04/2013 09:43:28 door - Ariën -
Quote:
Niks geks aan, als je een bestandsnaam die je in een include gebruikt, van naam of extentie veranderd, dan moet dat ook in je include() gebeuren, want anders dan wordt hij niet geincludeerd ;-)
Dat snap ik ook wel.
Maar dat is niet wat ik er mee bedoel te zeggen, ik bedoel dat als men een map opend dan krijg je de index.php of index.html te zien toch.
Maar als er geen van bijde in staat gebeurt er niets en krijg je gewoon de inhoud van die map te zien, tenminste zo gebeurde het altijd bij mij, en neem ik aan bij iedereen.
Gewijzigd op 28/04/2013 17:00:49 door Niek Kasius
Ja, dat is zo, maar soms krijg je ook een 403 error. Het ligt aan de instelling van Apache.
Ik heb windows 7 geinstalleerd, en gelijk xampp getest, en wat blijkt dat het wel aan moet Vista liggen want alles werkt, ik kan alles bekijken en database toevoegen, aanpassen en verwijderen.
Alleen heb ik ergens in een script iets gewijzigt, waardoor ik nu geen inlog scherm meer krijg en dus ook niet meer kan uitloggen.
Gewijzigd op 05/05/2013 09:03:32 door Frank Nietbelangrijk