gegevens slaan niet op in mysql

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2 3

Rick

rick

23/03/2009 09:19:00
Quote Anchor link
wesley schreef op 18.03.2009 14:53:
laatste post op dit topic *denk ik* want ik ga trainen.

Pak id van de record die je wilt aanpassen.

Toon alle gegevens van deze persoon, door de gegevens gekoppeld aandat id op te halen.

Update vervolgens, waar de id gelijk is aan de id die je net ophaalt.

simpel. zo simpel is het. 1 query maar nodig ook.

Succes ermee, en tot later ;)


Hoe kan ik alle gegevens tonen van de persoon welke gekoppeld zijn aan dat bepaalde id van dat persoon. De lukt als enige nog niet.
 
PHP hulp

PHP hulp

22/11/2024 22:59:47
 
- SanThe -

- SanThe -

23/03/2009 10:20:00
Quote Anchor link
Dat is basic sql.

Zie eens op www.phptuts.nl
 
Rick

rick

23/03/2009 10:26:00
Quote Anchor link
Het ophalen van de gegevens gekoppeld aan een id lukt wel, alleen nu het wijzigen van deze gegevens lukt nog niet helemaal. Bij de Update moet het id gelijk zijn aan het id wat eerder is opgehaald. hoe kan ik dit doen.

Zie script:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
<?php
ini_set('display_errors' , 1);
error_reporting(E_ALL);

//includes
include('config.php');
include('dbcon.php');

//session start
if(isset($_SESSION['id'])) {
}
else{
    header("Location: index.php?pagina=beheer");
}

    // verwijderen
    if (isset($_POST['verwijder'])){
        foreach($_POST['telid'] As $value ){
            $sql1 = "DELETE FROM gsm WHERE id = $value";
            $query1 = mysql_query($sql1);
            if (!$query1) {
            echo "Foutje in je query: ".mysql_error().".<br />De query was: ".$sql1;
            }

            else{
                echo "SQL klopt: ".$sql1;
                }
            }
    }

    
    // opslaan
     if (isset($_POST['opslaan'])){
        for ($i = 0; $i <= $_POST['maxid'];$i++){      
         echo "nr 1, doorgaan naar nr 2<br />";
            if(isset($i)) {
         echo "nr 2, doorgaan naar nr 3<br />";
                $naam = $i."naam";
                $afdeling = $i."afdeling";
                $internnummer = $i."internnummer";
                $nummer = $i."nummer";
                $inlog = $i."inlog";
         echo "nr 3, doorgaan naar nr 4<br />";
                mysql_query("UPDATE gsm SET naam = '".$_POST[$naam]."',        
                    afdeling = '"
.$_POST[$afdeling]."',
                    nummer = '"
.$_POST[$nummer]."',                    
                    internnummer = '"
.$_POST[$internnummer]."',
                    inlog = '"
.$_POST[$inlog]."',
                    WHERE id = $i"
)
                    or die (mysql_error());
           echo "nr 4, doorgaan naar nr 5<br />";
            }

 echo "nr 5 debugging gestopt.<br />Succesvol uitgewerkt. Ook de query";
        }

         //echo "De gegevens zijn succesvol bijgewerkt.<br>";
    }
    
    // bewerken
    if (isset($_POST['update'])){
        $maxid = 0;
    ?>

        
    <form name="verzenden" action="" method="post">
    <h2>Bewerken</h2>
    
    <?php
        foreach($_POST['telid'] As $value ){
            echo "<input type='hidden' name='telid' value=$value />";
            
            // select
            $sql3 = "SELECT * FROM gsm WHERE id=$value";
            $query3 = mysql_query($sql3);
            if (!$query3) {
            echo "Foutje in je query: ".mysql_error().".<br />De query was: ".$sql3;
            }

            else{
                echo "SQL klopt: ".$sql3;
                }

            
            
            while($row2 = mysql_fetch_array( $query3 )) {
                    
                    echo "<b>".$row2['naam']."</b><br>";
                    echo "<table>";
                    echo "<td>Naam: </td><td><input type='text' size='25' name='".$id."naam' value='".$row2['naam']."' /></td>";
                    echo "</tr><tr>";
                    echo "<td>Telefoonnummer: </td><td><input type='text' size='25' name='".$id."nummer' value='".$row2['nummer']."' /></td>";
                    echo "</tr><tr>";
                    echo "<td>Inlognaam: </td><td><input type='text' size='25' name='".$id."inlog' value='".$row2['inlog']."' /></td>";                    
                    echo "</tr><tr>";
                    echo "<td>Afdeling: </td><td><input type='text' size='25' name='".$id."afdeling' value='".$row2['afdeling']."' /></td>";
                    echo "</tr><tr>";
                    echo "<td>Intern verkort nummer: </td><td><input type='text' size='25' name='".$id."internnummer' value='".$row2['internnummer']."' /></td>";                    
                    echo "</tr></table>";
                    

                    
                    if ($id > $maxid){
                        $maxid = $id;
                    }
                }
        }

    echo "<input type='hidden' name='maxid' value='".$maxid."' />";
    ?>

    <br>
    <center>
  
    <input type='submit' name='opslaan' value='Opslaan' />
    </center>
    </form>
    <?php
    } else {
    
    echo "<h2>Gegevens bewerken</h2>";
    ?>

    <!--Select script-->    
<SCRIPT TYPE="text/javascript">


function veranderscript() {
  if (document.bewerk.groep.value == 1) location = 'index.php?pagina=internbewerk';
    else if (document.bewerk.groep.value == 2) location = 'index.php?pagina=buitenlijnbewerk';
    else if (document.bewerk.groep.value == 3) location = 'index.php?pagina=gsmbewerk';
}

</SCRIPT>

<FORM NAME="bewerk" ACTION="">
<P><SELECT NAME="groep" ONCHANGE="veranderscript();">
<OPTION SELECTED>Kies een groep...
<OPTION VALUE="1">Interne nummers
<OPTION VALUE="2">Directe buitenlijn nummers
<OPTION VALUE="3">GSM nummers
</SELECT></P>
</FORM>

<!--Zoekfunctie-->    
    <form method="post" name="search-form" action="">
        <input type="text" name="zoek" value="" />
        <input type="submit" id="submit" value="zoeken" />
    </form>
    <br><br>
    
    <?php    
/* selectie lijst printen */
    if (isset($_POST['zoek'])){
        $zoekterm = $_POST['zoek'];
    }
else {
        $zoekterm = "";
    }

?>

<form name="bewerkform" action="" method="post">
<input type='submit' value="Bewerk" name="update" />
<input type='submit' value="Verwijder" name="verwijder" /><br><br>
<table BORDER="0" ALIGN="left">
<tr align='left'>
    <td width="50">&nbsp;</td>
    <td width="180"><b>Naam</b></td>
    <td width="140"><b>Telefoonnummer</b></td>
    <td width="100"><b>Inlognaam</b></td>
    <td width="250"><b>Afdeling</b></td>
    <td width="180"><b>Intern verkort nummer</b></td>
</tr>
<?php
    $sql3
= "SELECT * FROM gsm WHERE naam LIKE '%$zoekterm%' ORDER BY naam ASC";
    $query3 = mysql_query($sql3);
            if (!$query3) {
            echo "Foutje in je query: ".mysql_error().".<br />De query was: ".$sql3;
            }

            else{
                echo "SQL klopt: ".$sql3;
                }

    
    while($row2 = mysql_fetch_array( $query3 )) {
            $id = $row2['id'];
            $sql4 = "SELECT * FROM gsm WHERE `id`=$id";
            $query4 = mysql_query($sql4);
            if (!$query4) {
            echo "Foutje in je query: ".mysql_error().".<br />De query was: ".$sql3;
            }

            else{
                echo "SQL klopt: ".$sql4;
                }

            
            while($row4 = mysql_fetch_array( $query4 )) {
                $naam = $row4['naam'];
            }

            echo "<tr align='left'>";
            echo "<td width='20'><input type='checkbox' value=".$row2['id']." name='telid[]' /></td>";
            echo "<td cwidth='180'>".$row2['naam']."</td>";
            echo "<td width='140'>".$row2['nummer']."</td>";
            echo "<td width='100'>".$row2['inlog']."</td>";
            echo "<td width='250'>".$row2['afdeling']."</td>";
            echo "<td width='20'>".$row2['internnummer']."</td>";
            echo "</tr>";
        }

        
    ?>

</table>
</form>
<?php
}
?>

<br><br>


Zie rickvanderheiden.nl voor een paar screenshots.
 
- SanThe -

- SanThe -

23/03/2009 10:36:00
Quote Anchor link
Waarom een lege if en een gevulde else?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
if(isset($_SESSION['id'])) {
}
else{
    header("Location: index.php?pagina=beheer");
}

?>

Een uitroepteken (! voor isset) staat voor NOT.
Dit heeft dus hetzelfde effect.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if(!isset($_SESSION['id'])) {
    header("Location: index.php?pagina=beheer");
}

?>


Verder zie ik dat je steeds de userinput (GET POST ect.) direct in een query zet. Dat is dus een lek en vragen om problemen. Lees eens over sql-injection.
 
Rick

rick

23/03/2009 10:49:00
Quote Anchor link
bedankt voor die tip van session die was ik vergeten een keer terug te zetten. maar de veiligheid kijk ik pas na als het werkt.

Hier zit ergens het probleem voor het wijzigen, alleen kom ik er niet uit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
  // opslaan
     if (isset($_POST['opslaan'])){
        for ($i = 0; $i <= $_POST['maxid'];$i++){      
         echo "nr 1, doorgaan naar nr 2<br />";
            if(isset($i)) {
         echo "nr 2, doorgaan naar nr 3<br />";
                $naam = $i."naam";
                $afdeling = $i."afdeling";
                $internnummer = $i."internnummer";
                $nummer = $i."nummer";
                $inlog = $i."inlog";
         echo "nr 3, doorgaan naar nr 4<br />";
                mysql_query("UPDATE gsm SET naam = '".$_POST[$naam]."',        
                    afdeling = '"
.$_POST[$afdeling]."',
                    nummer = '"
.$_POST[$nummer]."',                    
                    internnummer = '"
.$_POST[$internnummer]."',
                    inlog = '"
.$_POST[$inlog]."',
                    WHERE id = $i"
)
                    or die (mysql_error());
           echo "nr 4, doorgaan naar nr 5<br />";
            }

 echo "nr 5 debugging gestopt.<br />Succesvol uitgewerkt. Ook de query";
        }

         //echo "De gegevens zijn succesvol bijgewerkt.<br>";
    }
    
    // bewerken
    if (isset($_POST['update'])){
        $maxid = 0;
    ?>

        
    <form name="verzenden" action="" method="post">
    <h2>Bewerken</h2>
    
    <?php
        foreach($_POST['telid'] As $value ){
            echo "<input type='hidden' name='telid' value=$value />";
            
            // select
            $sql3 = "SELECT * FROM gsm WHERE id=$value";
            $query3 = mysql_query($sql3);
            if (!$query3) {
            echo "Foutje in je query: ".mysql_error().".<br />De query was: ".$sql3;
            }

            else{
                echo "SQL klopt: ".$sql3;
                }

            
            
            while($row2 = mysql_fetch_array( $query3 )) {
                    
                    echo "<b>".$row2['naam']."</b><br>";
                    echo "<table>";
                    echo "<td>Naam: </td><td><input type='text' size='25' name='".$id."naam' value='".$row2['naam']."' /></td>";
                    echo "</tr><tr>";
                    echo "<td>Telefoonnummer: </td><td><input type='text' size='25' name='".$id."nummer' value='".$row2['nummer']."' /></td>";
                    echo "</tr><tr>";
                    echo "<td>Inlognaam: </td><td><input type='text' size='25' name='".$id."inlog' value='".$row2['inlog']."' /></td>";                    
                    echo "</tr><tr>";
                    echo "<td>Afdeling: </td><td><input type='text' size='25' name='".$id."afdeling' value='".$row2['afdeling']."' /></td>";
                    echo "</tr><tr>";
                    echo "<td>Intern verkort nummer: </td><td><input type='text' size='25' name='".$id."internnummer' value='".$row2['internnummer']."' /></td>";                    
                    echo "</tr></table>";
                    

                    
                    if ($id > $maxid){
                        $maxid = $id;
                    }
                }
        }
?>


Foutmelding zie www.rickvanderheiden.nl
 
- SanThe -

- SanThe -

23/03/2009 10:58:00
Quote Anchor link
Zoals je ziet bestaan de POST-vars niet. Een varnaam begint trouwens nooit met een cijfer. Werkt namelijk niet.
Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
 

Pagina: « vorige 1 2 3



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.