Beste allemaal,
Ik ben voor een website bezig met een klein cms systeem, en probeer op die moment mijn linkpartnersysteem aan te passen via een adminpanel. Ik heb 3 opties:
- Linkpartners wijzigen
- Linkpartners verwijderen
- Linkpartners toevoegen.
De links staan in een mysql database. En nu heb ik over het Linkpartners wijzigen een vraag.
Ik heb een form gemaakt waarin je eerst de link die je wilt wijzigen selecteerd, daarna voer je een nieuwe naam en link in en je drukt op opslaan. Daaronder zie je de huidige linkpartners staan.
Dit werkt naar behoren.
Maar nu wilde ik het zo maken dat als je de linkpartner selecteerd dat je bij naam en link gelijk de huidige naam en link ziet staan van de desbetreffende linkpartner en dit lukt me niet. Ik krijg namelijk wel de juiste naam te zien en link te zien bij de velden Naam en Link, maar als ik die dan wijzig en op Wijzigen druk veranderen de waardes niet in de Mysql database.
Ik weet denk ik wel hoe het komt maar ik weet alleen geen oplossing voor het probleem.
Hieronder zal ik het script even uitleggen en het probleem voorleggen:
Zo selecteer ik de Linkpartner:
Dan maak ik een php scriptje om van het ingevoerde ID een variabele te maken dat doe ik zo:
Dan gebruik ik die variabele bij de volgende velden naam en link als value.
Dat deed ik zo:
Als ik dit testte werkte dit nog steeds redelijk goed. Ik zag netjes de juiste naam staan in het veld en kon deze wijzigen maar als ik dan op Wijzigen onderaan klikte gebeurde er niks. Het lag aan het ID volgens mij want als ik de Variabele $sid verving door het nummer van het ID dan werkte het wel.
Dit is mijn script voor het updaten van de tabel:
Ik krijg geen foutmeldingen of iets dergelijks en er staat gewoon netjes "De linkpartners is gewijzigd".
Maar er gebeurt gewoon niks. En zoals ik al gezegd had als ik de variabele $sid vervang door een 1 van het id dan werkt het wel.
Hier nog een keer het complete script:
Ik hoop dat ik mijn vraag zo wel naar behoren heb gesteld en dat iemand mij kan helpen!
Ik ben voor een website bezig met een klein cms systeem, en probeer op die moment mijn linkpartnersysteem aan te passen via een adminpanel. Ik heb 3 opties:
- Linkpartners wijzigen
- Linkpartners verwijderen
- Linkpartners toevoegen.
De links staan in een mysql database. En nu heb ik over het Linkpartners wijzigen een vraag.
Ik heb een form gemaakt waarin je eerst de link die je wilt wijzigen selecteerd, daarna voer je een nieuwe naam en link in en je drukt op opslaan. Daaronder zie je de huidige linkpartners staan.
Dit werkt naar behoren.
Maar nu wilde ik het zo maken dat als je de linkpartner selecteerd dat je bij naam en link gelijk de huidige naam en link ziet staan van de desbetreffende linkpartner en dit lukt me niet. Ik krijg namelijk wel de juiste naam te zien en link te zien bij de velden Naam en Link, maar als ik die dan wijzig en op Wijzigen druk veranderen de waardes niet in de Mysql database.
Ik weet denk ik wel hoe het komt maar ik weet alleen geen oplossing voor het probleem.
Hieronder zal ik het script even uitleggen en het probleem voorleggen:
Zo selecteer ik de Linkpartner:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| <form enctype="multipart/form-data" action="wijzig1.php" method="POST"> <label>Selecteer een Linkpartner:</label> <select name="id" > <?php include "../config.php"; //verbinding maken $query = "SELECT * FROM `links` ORDER BY id"; //query is aangemaakt $sql = mysql_query($query) or die ( mysql_error( ) ); //query is uitgevoerd while($record = mysql_fetch_object($sql)){ echo"<option value='".$record->id."'>".$record->naam."</option>"; } ?> </select> <input type="submit" name="select" value="Selecteer"> </form> |
Dan maak ik een php scriptje om van het ingevoerde ID een variabele te maken dat doe ik zo:
PHP:
1
2
3
4
5
6
7
8
9
10
11
| <? include "../config.php"; //verbinding maken if(isset($_POST['select'])) { $sid = ''.($_POST['id']).''; } ?> |
Dan gebruik ik die variabele bij de volgende velden naam en link als value.
Dat deed ik zo:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
| <?php include "config.php"; //verbinding maken $query = "SELECT * FROM `links` WHERE id='$sid'"; //query is aangemaakt $sql = mysql_query($query) or die ( mysql_error( ) ); //query is uitgevoerd echo"<ul>"; while($record = mysql_fetch_object($sql)){ echo"<input value='".$record->hyperlink."' type='text' size='50' name='link'>"; } mysql_close(); ?> |
Als ik dit testte werkte dit nog steeds redelijk goed. Ik zag netjes de juiste naam staan in het veld en kon deze wijzigen maar als ik dan op Wijzigen onderaan klikte gebeurde er niks. Het lag aan het ID volgens mij want als ik de Variabele $sid verving door het nummer van het ID dan werkte het wel.
Dit is mijn script voor het updaten van de tabel:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| <? include "../config.php"; //verbinding maken if(isset($_POST['edit'])) { $ssrc = ''.($_POST['link']).''; $sname = ''.$_POST['name'].''; mysql_query("UPDATE links SET naam= '$sname', hyperlink= '$ssrc' WHERE id= '$sid'") or die (mysql_error()); echo 'De linkpartner is gewijzigd!<br>'; } ?> |
Ik krijg geen foutmeldingen of iets dergelijks en er staat gewoon netjes "De linkpartners is gewijzigd".
Maar er gebeurt gewoon niks. En zoals ik al gezegd had als ik de variabele $sid vervang door een 1 van het id dan werkt het wel.
Hier nog een keer het complete script:
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
| <form enctype="multipart/form-data" action="wijzig1.php" method="POST"> <label>Nieuwe link:</label><br /> <?php include "../config.php"; //verbinding maken $query = "SELECT * FROM `links` WHERE id='$sid'"; //query is aangemaakt $sql = mysql_query($query) or die ( mysql_error( ) ); //query is uitgevoerd echo"<ul>"; while($record = mysql_fetch_object($sql)){ echo"<input value='".$record->hyperlink."' type='text' size='50' name='link'>"; } mysql_close(); ?> </p> <label>Nieuwe naam:</label> <br /> <?php include "../config.php"; //verbinding maken $query = "SELECT * FROM `links` WHERE id='$sid'"; //query is aangemaakt $sql = mysql_query($query) or die ( mysql_error( ) ); //query is uitgevoerd echo"<ul>"; while($record = mysql_fetch_object($sql)){ echo"<input value='".$record->naam."' type='text' size='50' name='name'>"; } mysql_close(); ?> <br /> <br> <input type="submit" name="edit" value="Wijzig"></form> <br> <? include "../config.php"; //verbinding maken if(isset($_POST['edit'])) { $ssrc = ''.($_POST['link']).''; $sname = ''.$_POST['name'].''; mysql_query("UPDATE links SET naam= '$sname', hyperlink= '$ssrc' WHERE id= '$sid'") or die (mysql_error()); echo 'De linkpartner is gewijzigd!<br>'; } ?> <br> <Br> <div id="updates" class="boxed"> <h2 class="title">Recente Linkpartners </h2> <div class="content"> <ul> <?php include "../config.php"; //verbinding maken $query = "SELECT * FROM `links` ORDER BY 'id'"; //query is aangemaakt $sql = mysql_query($query) or die ( mysql_error( ) ); //query is uitgevoerd echo"<ul>"; while($record = mysql_fetch_object($sql)){ echo"<li><a href=".$record->hyperlink.">".$record->naam."</a></li>"; } mysql_close(); ?> |
Ik hoop dat ik mijn vraag zo wel naar behoren heb gesteld en dat iemand mij kan helpen!