Welkom, Gast. Je bent niet ingelogd.

PHP Inlcude probleem

Jaapiej
krek
Geplaatst op: 15 Mar 2007, 15:20
PimpCoins: 0
💸+
Bewerken Quote

Hallo,

Ik ben bezig met een website, en ik heb een script, genaamd PhpMyLogon, in gebruik.

In het kort:

Ik include een pagina die een zoekopdracht uitvoert.
De zoekopdracht zoekt naar een gebruikersnaam.
Als je op zoeken klikt wordt de link:
"?edit=true&search=gebruikersnaam"
Dit moet zijn:
"?p=admin&edit=true&search=gebruikersnaam".

Hoe pas ik dit aan? Vanaf regel 82 in de source is de zoek input.

Nu is het probleem dat ik de pagina's die PhpMyLogon gebruikt wil includen, en dat doe ik dus ook, dus dan krijg ik: www.mijnurl.nl/map/?p=admin <--- dat is dan nu bijvoorbeeld de admin pagina van PhpMyLogon.

Op die pagina staan 2 links; "Gebruikers wijzigen" en "Gebruikers verwijderen". Die linkten eerst naar:
"admin.php?edit=do" en
"admin.php?del=do"

Die heb ik keurig veranderd naar:
"?p=admin&edit=do" en
"?p=admin&del=do"
En die links werken nu ook gewoon.

Maar als ik nu op de pagina "Gebruikers wijzigen" kom, dan moet ik een zoekopdracht starten en dus de gebruikersnaam die ik wil editten invullen, daarna moet ik op zoeken klikken.

In de source (die staat hieronder) stond bij "<input action=admin.php>" die "admin.php" heb ik dus veranderd naar: "?p=admin", alleen dan klik ik op zoeken en dan kom ik op de pagina:
"?edit=true&search=gebruikersnaam", dit moet natuurlijk zijn:
"?p=admin&edit=true&search=gebruikersnaam"
en als ik dat ook invul in m'n adresbalk werkt het ook. Maar ik wil dus dat ik automatisch naar die pagina ga als ik op zoeken druk. Weet iemand wat ik in de source moet aanpassen?

Source van "admin.php", bij die <=? $admin_name?> tags, word de bepaalde taal geinclude, daar hoort dus tekst te staan. Vanaf ongeveer regel 80 begint volgens mij het search gedeelte.

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
<?php
###################################
##   PHPMYLOGON: A LOGIN SYSTEM  ##
##    (c) 2006 Jorik Berkepas    ##
##   Under the GNU GPL license   ##
##     [email protected]      ##
###################################

// Page only for admin viewable, page for editting users

include_once("config.php");
include_once("lang/lang_".$lang.".php");
$pml_title = $site_name;
include("htmltop.php");
include_once("connect.php");
// Only for admins
require("safe_admin.php");

if(isset($_GET['edit'])) {
 // Edit
 if(is_numeric($_GET['edit'])) {
  if(isset($_POST['submit'])) {
   // Editexec
   if($_POST['pass1'] != "") {
    if($_POST['pass1'] == $_POST['pass2']) {
     $newpass = md5($_POST['pass1']);
     $sql = "UPDATE `".$db_tbl."` SET name='".$_POST['naam']."',password='".$newpass."',mail='".$_POST['email']."',active='".$_POST['actief']."',state='".$_POST['status']."' WHERE id='".$_GET['edit']."'";
     $query = mysql_query($sql);
     if($query == TRUE) {
      echo $admin_editok;
     }else{
      echo $error;
     }
    }else{
     echo $admin_pascheck;
    }
   }else{
    // Change without pass
    $sql = "UPDATE `".$db_tbl."` SET name='".$_POST['naam']."',mail='".$_POST['email']."',active='".$_POST['actief']."',state='".$_POST['status']."' WHERE id='".$_GET['edit']."'";
    $query = mysql_query($sql);
    if($query == TRUE) {
     echo $admin_editok;
    }else{
     echo $error;
    }
   } 
  }else{
   // Editform
   $sql = "SELECT * FROM `".$db_tbl."` WHERE id='".$_GET['edit']."'";
   $query = mysql_query($sql);
   $row = mysql_fetch_object($query);
   $naam = htmlspecialchars($row->name);
   $status = htmlspecialchars($row->state);
   $email = htmlspecialchars($row->mail);
   $actief = htmlspecialchars($row->active);
   ?>
   <form method="post" action="?p=admin&edit=<?= $_GET['edit'] ?>">
    <table>
     <tr>
      <td><label for="naam"><?= $admin_name ?>:</label></td><td><input type="text" id="naam" name="naam" value="<?= $naam ?>" maxlength="50" /></td>
     </tr>
     <tr>
      <td><label for="pass1"><?= $admin_newpass ?>:</label></td><td><input id="pass1" type="password" name="pass1" /> <small><?= $admin_newpass_note ?></small></td>
     </tr>
     <tr>
      <td><label for="pass2"><?= $admin_repeat ?>:</label></td><td><input id="pass2" type="password" name="pass2" /></td>
     </tr>
     <tr>
      <td><label for="email"><?= $admin_mail ?>:</label></td><td><input id="email" type="text" name="email" value="<?= $email ?>" maxlength="100" /></td>
     </tr>
     <tr>
      <td><label for="actief"><?= $admin_active ?>:</label></td><td><input id="actief" type="text" name="actief" value="<?= $actief ?>" maxlength="1" size="1" /> <small>(<?= $admin_active_note ?>)</small></td>
     </tr>
     <tr>
      <td><label for="status"><?= $admin_state ?>:</label></td><td><input id="status" type="text" name="status" value="<?= $status ?>" maxlength="1" size="1" /> <small>(1 = admin, 0 = user)</small></td>
     </tr>
     <tr>
      <td></td><td><input type="submit" name="submit" value="<?= $admin_save ?>" /></td>
     </tr>
    </table>
   </form>
   <?
  }
 }else{
  // List
  if(isset($_GET['search'])) {
   $search = $_GET['search'];
  }else{ 
   $search = "";
  }
  ?>
  <?= $admin_usesearch ?><br />
  <form name="search" method="get" action="?p=admin">
  <input type="hidden" name="edit" value="true" />
  <input type="text" name="search" value="<?= $search ?>" />
  <input type="submit" value="<?= $admin_search ?>" />
  </form><p /> 
  <?= $admin_whichedit ?>
  <form name="select" method="get" action="?p=admin">
   <table>
    <tr>
     <td><select name="edit" size="1">
      <?
      if(isset($_GET['search'])) {
       $search = "%".$_GET['search']."%";
      }else{
       $search = "jfsLSdkjdsLD";
      }
      $sql = "SELECT name,id FROM `".$db_tbl."` WHERE name LIKE '".$search."' ORDER BY name ASC";
      $query = mysql_query($sql);
      $count = mysql_num_rows($query);
      if($count > 0) {
       while($row = mysql_fetch_object($query)) {
        $id = htmlspecialchars($row->id);
        $naam = htmlspecialchars($row->name);
        echo "<option value="".$id."">".$naam."</option>\n";
       }
      }else{
       echo "<option value="do">* ".$admin_noresult." *</option>\n";
      }
      ?></select>
     </td>
     <td><input type="submit" value="<?= $admin_edit ?>" /></td>
    </tr>
   </table>
  </form>
  <?
 }
}elseif(isset($_GET['del'])) {
 // Delete
 if(is_numeric($_GET['del'])) {
  // Deleteexec
  $sql = "DELETE FROM `".$db_tbl."` WHERE id='".$_GET['del']."'";
  $query = mysql_query($sql);
  if($query == TRUE) {
   echo $admin_delok;
  }else{
   echo $error;
  }
 }else{
  // List
  if(isset($_GET['search'])) {
   $search = $_GET['search'];
  }else{ 
   $search = "";
  }
  ?>
  <?= $admin_usesearch ?><br />
  <form name="search" method="get" action="?p=admin">
  <input type="hidden" name="del" value="true" />
  <input type="text" name="search" value="<?= $search ?>" />
  <input type="submit" value="<?= $admin_search ?>" />
  </form><p /> 
  <?= $admin_whichdel ?>
  <form name="select" method="get" action="?p=admin">
   <table>
    <tr>
     <td><select name="del" size="1">
      <?
      if(isset($_GET['search'])) {
       $search = "%".$_GET['search']."%";
      }else{
       $search = "jfsLSdkjdsLD";
      }
      $sql = "SELECT name,id FROM `".$db_tbl."` WHERE name LIKE '".$search."' ORDER BY name ASC";
      $query = mysql_query($sql);
      $count = mysql_num_rows($query);
      if($count > 0) {
       while($row = mysql_fetch_object($query)) {
        $id = htmlspecialchars($row->id);
        $naam = htmlspecialchars($row->name);
        echo "<option value="".$id."">".$naam."</option>\n";
       }
      }else{
       echo "<option value="do">* ".$admin_noresult." *</option>\n";
      }
      ?></select>
     </td>
     <td><input type="submit" value="<?= $admin_del ?>" /></td>
    </tr>
   </table>
  </form>
  <?
 }
}else{
 // Choselist
 ?>
 <?= $admin_whatdo ?><br />
 <ul>
  <li><a href="?p=admin&edit=do"><?= $admin_edituser ?></a></li>
  <li><a href="?p=admin&del=do"><?= $admin_deluser ?></a></li>
 </ul>
 <?
}
  

include("htmlbottom.php");
?>

Ik hoop echt dat iemand me kan helpen, als iets niet duidelijk zeg je het maar. Ik heb het volgens mij zo duidelijk mogelijk uitgelegt.

BVD

Jaapiej

[Laatst bewerkt door Jaapiej op donderdag 15 maart 2007, om 19:40]
Jaapiej
krek
Geplaatst op: 15 Mar 2007, 19:30
PimpCoins: 0
💸+
Bewerken Quote

Bump, ik hoop echt dat iemand weet wat ik bedoel en me kan helpen...

Died
Geplaatst op: 15 Mar 2007, 19:31
PimpCoins: 0
💸+
Bewerken Quote

Ik snap je verhaal niet echt, en ik heb ook niet echt zin om het te gaan lezen.
Misschien kan je het wat korter beschrijven ?

Jaapiej
krek
Geplaatst op: 15 Mar 2007, 19:41
PimpCoins: 0
💸+
Bewerken Quote

Spunk schreef:

Ik snap je verhaal niet echt, en ik heb ook niet echt zin om het te gaan lezen.
Misschien kan je het wat korter beschrijven ?

Heb nu een kortere uitleg bijgezet, begrijp je het nu?

Died
Geplaatst op: 15 Mar 2007, 19:45
PimpCoins: 0
💸+
Bewerken Quote

Kijk dat is kort en bondig, ik zal er even naar kijken

Basjee
Octo
Geplaatst op: 15 Mar 2007, 20:01
PimpCoins: 0
💸+
Bewerken Quote

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
<?php 
################################### 
##   PHPMYLOGON: A LOGIN SYSTEM  ## 
##    (c) 2006 Jorik Berkepas    ## 
##   Under the GNU GPL license   ## 
##     [email protected]      ## 
################################### 

// Page only for admin viewable, page for editting users 

include_once("config.php"); 
include_once("lang/lang_".$lang.".php"); 
$pml_title = $site_name; 
include("htmltop.php"); 
include_once("connect.php"); 
// Only for admins 
require("safe_admin.php"); 

if(isset($_GET['edit'])) { 
 // Edit 
 if(is_numeric($_GET['edit'])) { 
  if(isset($_POST['submit'])) { 
   // Editexec 
   if($_POST['pass1'] != "") { 
    if($_POST['pass1'] == $_POST['pass2']) { 
     $newpass = md5($_POST['pass1']); 
     $sql = "UPDATE `".$db_tbl."` SET name='".$_POST['naam']."',password='".$newpass."',mail='".$_POST['email']."',active='".$_POST['actief']."',state='".$_POST['status']."' WHERE id='".$_GET['edit']."'"; 
     $query = mysql_query($sql); 
     if($query == TRUE) { 
      echo $admin_editok; 
     }else{ 
      echo $error; 
     } 
    }else{ 
     echo $admin_pascheck; 
    } 
   }else{ 
    // Change without pass 
    $sql = "UPDATE `".$db_tbl."` SET name='".$_POST['naam']."',mail='".$_POST['email']."',active='".$_POST['actief']."',state='".$_POST['status']."' WHERE id='".$_GET['edit']."'"; 
    $query = mysql_query($sql); 
    if($query == TRUE) { 
     echo $admin_editok; 
    }else{ 
     echo $error; 
    } 
   }  
  }else{ 
   // Editform 
   $sql = "SELECT * FROM `".$db_tbl."` WHERE id='".$_GET['edit']."'"; 
   $query = mysql_query($sql); 
   $row = mysql_fetch_object($query); 
   $naam = htmlspecialchars($row->name); 
   $status = htmlspecialchars($row->state); 
   $email = htmlspecialchars($row->mail); 
   $actief = htmlspecialchars($row->active); 
   ?> 
   <form method="post" action="?p=admin&edit=true&search<?= $admin_name ?>"> 
    <table> 
     <tr> 
      <td><label for="naam"><?= $admin_name ?>:</label></td><td><input type="text" id="naam" name="naam" value="<?= $naam ?>" maxlength="50" /></td> 
     </tr> 
     <tr> 
      <td><label for="pass1"><?= $admin_newpass ?>:</label></td><td><input id="pass1" type="password" name="pass1" /> <small><?= $admin_newpass_note ?></small></td> 
     </tr> 
     <tr> 
      <td><label for="pass2"><?= $admin_repeat ?>:</label></td><td><input id="pass2" type="password" name="pass2" /></td> 
     </tr> 
     <tr> 
      <td><label for="email"><?= $admin_mail ?>:</label></td><td><input id="email" type="text" name="email" value="<?= $email ?>" maxlength="100" /></td> 
     </tr> 
     <tr> 
      <td><label for="actief"><?= $admin_active ?>:</label></td><td><input id="actief" type="text" name="actief" value="<?= $actief ?>" maxlength="1" size="1" /> <small>(<?= $admin_active_note ?>)</small></td> 
     </tr> 
     <tr> 
      <td><label for="status"><?= $admin_state ?>:</label></td><td><input id="status" type="text" name="status" value="<?= $status ?>" maxlength="1" size="1" /> <small>(1 = admin, 0 = user)</small></td> 
     </tr> 
     <tr> 
      <td></td><td><input type="submit" name="submit" value="<?= $admin_save ?>" /></td> 
     </tr> 
    </table> 
   </form> 
   <? 
  } 
 }else{ 
  // List 
  if(isset($_GET['search'])) { 
   $search = $_GET['search']; 
  }else{  
   $search = ""; 
  } 
  ?> 
  <?= $admin_usesearch ?><br /> 
  <form name="search" method="get" action="?p=admin"> 
  <input type="hidden" name="edit" value="true" /> 
  <input type="text" name="search" value="<?= $search ?>" /> 
  <input type="submit" value="<?= $admin_search ?>" /> 
  </form><p />  
  <?= $admin_whichedit ?> 
  <form name="select" method="get" action="?p=admin"> 
   <table> 
    <tr> 
     <td><select name="edit" size="1"> 
      <? 
      if(isset($_GET['search'])) { 
       $search = "%".$_GET['search']."%"; 
      }else{ 
       $search = "jfsLSdkjdsLD"; 
      } 
      $sql = "SELECT name,id FROM `".$db_tbl."` WHERE name LIKE '".$search."' ORDER BY name ASC"; 
      $query = mysql_query($sql); 
      $count = mysql_num_rows($query); 
      if($count > 0) { 
       while($row = mysql_fetch_object($query)) { 
        $id = htmlspecialchars($row->id); 
        $naam = htmlspecialchars($row->name); 
        echo "<option value="".$id."">".$naam."</option>\n"; 
       } 
      }else{ 
       echo "<option value="do">* ".$admin_noresult." *</option>\n"; 
      } 
      ?></select> 
     </td> 
     <td><input type="submit" value="<?= $admin_edit ?>" /></td> 
    </tr> 
   </table> 
  </form> 
  <? 
 } 
}elseif(isset($_GET['del'])) { 
 // Delete 
 if(is_numeric($_GET['del'])) { 
  // Deleteexec 
  $sql = "DELETE FROM `".$db_tbl."` WHERE id='".$_GET['del']."'"; 
  $query = mysql_query($sql); 
  if($query == TRUE) { 
   echo $admin_delok; 
  }else{ 
   echo $error; 
  } 
 }else{ 
  // List 
  if(isset($_GET['search'])) { 
   $search = $_GET['search']; 
  }else{  
   $search = ""; 
  } 
  ?> 
  <?= $admin_usesearch ?><br /> 
  <form name="search" method="get" action="?p=admin"> 
  <input type="hidden" name="del" value="true" /> 
  <input type="text" name="search" value="<?= $search ?>" /> 
  <input type="submit" value="<?= $admin_search ?>" /> 
  </form><p />  
  <?= $admin_whichdel ?> 
  <form name="select" method="get" action="?p=admin"> 
   <table> 
    <tr> 
     <td><select name="del" size="1"> 
      <? 
      if(isset($_GET['search'])) { 
       $search = "%".$_GET['search']."%"; 
      }else{ 
       $search = "jfsLSdkjdsLD"; 
      } 
      $sql = "SELECT name,id FROM `".$db_tbl."` WHERE name LIKE '".$search."' ORDER BY name ASC"; 
      $query = mysql_query($sql); 
      $count = mysql_num_rows($query); 
      if($count > 0) { 
       while($row = mysql_fetch_object($query)) { 
        $id = htmlspecialchars($row->id); 
        $naam = htmlspecialchars($row->name); 
        echo "<option value="".$id."">".$naam."</option>\n"; 
       } 
      }else{ 
       echo "<option value="do">* ".$admin_noresult." *</option>\n"; 
      } 
      ?></select> 
     </td> 
     <td><input type="submit" value="<?= $admin_del ?>" /></td> 
    </tr> 
   </table> 
  </form> 
  <? 
 } 
}else{ 
 // Choselist 
 ?> 
 <?= $admin_whatdo ?><br /> 
 <ul> 
  <li><a href="?p=admin&edit=do"><?= $admin_edituser ?></a></li> 
  <li><a href="?p=admin&del=do"><?= $admin_deluser ?></a></li> 
 </ul> 
 <? 
} 
   

include("htmlbottom.php"); 
?>

Hij neemt nu de $admin_user
Dus het word zo
?p=admin&edit=true&search=(admin )gebruikersnaam

Of als je dat niet bedoelt
Verander regel 99 naar dit

1
<form name="select" method="get" action="?p=admin&edit=true&search=".$naam."">

[Laatst bewerkt door Basjee op donderdag 15 maart 2007, om 20:08]
Jaapiej
krek
Geplaatst op: 15 Mar 2007, 20:07
PimpCoins: 0
💸+
Bewerken Quote

Basjee schreef:

[...]

Hij neemt nu de $admin_user
Dus het word zo
?p=admin&edit=true&search=(admin )gebruikersnaam

Nee, die <?= $admin_shit ?> tags, zijn tags waar hij een tekstje include, dus dat je meerdere talen kan gebruiken.

Basjee
Octo
Geplaatst op: 15 Mar 2007, 20:08
PimpCoins: 0
💸+
Bewerken Quote

Lees mijn edit anders

Jaapiej
krek
Geplaatst op: 15 Mar 2007, 20:10
PimpCoins: 0
💸+
Bewerken Quote

Basjee schreef:

Lees mijn edit anders

Ik test hem anders wel ff.

Oh, had niet gezien dat je hem had geëdit...

[Laatst bewerkt door Jaapiej op donderdag 15 maart 2007, om 20:12]
Jaapiej
krek
Geplaatst op: 15 Mar 2007, 20:14
PimpCoins: 0
💸+
Bewerken Quote

Volgens mij wordt $naam pas later gedefineerd... Maar ik test hem nu wel...
Nope het werkt niet... Hij geeft een verschrikkelijk rare layout dan... De helepagina trekt krom, maar dat is niet van belang denk ik,....

[Laatst bewerkt door Jaapiej op donderdag 15 maart 2007, om 20:16]
Basjee
Octo
Geplaatst op: 15 Mar 2007, 20:16
PimpCoins: 0
💸+
Bewerken Quote

dan defineer je naam voor dat je het gebruikt

Dan moet je dít net boven regel 99 zetten:

1
2
3
$sql = "SELECT name,id FROM `".$db_tbl."` WHERE name LIKE '".$search."' ORDER BY name ASC";  
$query = mysql_query($sql); 
$sql = mysql_fetch_assoc($query);

En dan moet je naam zo opvragen $sql[naam]

Jaapiej
krek
Geplaatst op: 15 Mar 2007, 20:32
PimpCoins: 0
💸+
Bewerken Quote

Dit is trouwens allemaal ná de search, maar het is de search die niet werkt, de button van search is: regel 93. Kijk daar anders ff naar, hij stuurt de pagina namelijk niet naar:
"?p=admin&edit=true&search=ingetypte_gebruikersnaam"

Maar hij stuurt hem naar:
"?p=admin(<--dat valt dus weg omdat er nog een vraagteken achterkomt)
?edit=true&search=ingetypte_gebruikersnaam"

Hetgeen dat jij uitlegt is niet het probleem, maar de search zelf is het probleem.

[Laatst bewerkt door Jaapiej op donderdag 15 maart 2007, om 20:36]
Jaapiej
krek
Geplaatst op: 16 Mar 2007, 16:18
PimpCoins: 0
💸+
Bewerken Quote

bump

📫

Nieuw privébericht

🔥

Registreren


Login