Toon posts:

require() var verdwijnt

Pagina: 1
Acties:

Verwijderd

Topicstarter
ok, ik heb een var $user die in een file staat, wanneer ik ze gewoon include leest hij ze zoder probs, maar wanneer ik een formpje submit is die ineens weg. Hij blijft me acces denied geven en ik heb al alles geprobeerd, als ik de var $user bij die acces denied zet is die leeg hoewel ik zeker weet dat hij die via die require definieert. code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
global $user; 

require('forum/newlog.php'); 


  $sql = "SELECT custom FROM profiles WHERE username = '$user'"; 
  $resu = mysql_query($sql) or die(mysql_error());    

  while ($recordy = mysql_fetch_array($resu)) {  
   $admin = $recordy["custom"]; 
    global $admin; 
   } 

  if($action == edit){ 
    $result = mysql_query("SELECT user FROM comments WHERE com_id= '$cid'"); 
    while ($recordy = mysql_fetch_array($result)) { 
    $usercom = $recordy["user"]; 
    global $usercom; 

    } 

    if(($usercom == $username) or ($admin == 'Admin')){ enzoverder } else { echo"Acces denied"  }

Verwijderd

Topicstarter
code:
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
Volledige code: 

<?php 

global $user; 

require('forum/newlog.php'); 


  $sql = "SELECT custom FROM profiles WHERE username = '$user'"; 
  $resu = mysql_query($sql) or die(mysql_error());    

  while ($recordy = mysql_fetch_array($resu)) {  
   $admin = $recordy["custom"]; 
    global $admin; 
   } 

  if($action == edit){ 
    $result = mysql_query("SELECT user FROM comments WHERE com_id= '$cid'"); 
    while ($recordy = mysql_fetch_array($result)) { 
    $usercom = $recordy["user"]; 
    global $usercom; 

    } 

    if(($usercom == $username) or ($admin == 'Admin')){ 

  $result = mysql_query("SELECT comment, title, user FROM comments WHERE com_id= '$cid' ORDER BY com_id DESC"); 
    while ($recordy = mysql_fetch_array($result)) { 
    $comup =$recordy["comment"]; 
    $title =$recordy["title"]; 
    $usercom =$recordy["user"]; 
     
echo"<form action=\"comment.php?action=edit&cid=$cid&id=$id\" method=\"post\" enctype=\"multipart/form-data\"> 
   <input type=\"hidden\" name=\"edit\" value=\"edit\"> 
   <input type=\"hidden\" name=\"cid\" value=\"$cid\"> 
   <input type=\"hidden\" name=\"usercom\" value=\"$usercom\"> 
<div align=\"center\"> 
  <center> 
  <table border=\"0\" cellspacing=\"0\" width=\"500\" height=\"1\"> 
    <tr> 
    <td width=\"500\" colspan=\"2\" height=\"21\" background=\"http://mm2heaven.saburovo.com/forum/images/themes/coolblue/grad.gif\" style=\"border: 1 solid #000000\"> 
      <p align=\"center\"><b><font color=\"FFFFFF\">-{ Edit comment }-</font></b> 
    </td> 
    </tr> 
    <tr> 
    <td width=\"200\" align=\"right\" height=\"23\" bgcolor=\"#F5F5F5\" style=\"border-left: 1 solid #000000\"> 
     <SELECT NAME=\"remove\"> 
   <OPTION VALUE=\"0\"> Keep 
   <OPTION VALUE=\"1\"> Remove 
</select> 
    </td> 
    </tr> 
    <td width=\"300\" valign=\"top\" height=\"23\" bgcolor=\"#F5F5F5\" style=\"border-left: 1 solid #000000; border-right: 1 solid #000000\"> 
    Comment: <textarea name=\"comupd\" cols=\"50\" rows=\"10\">$comup</textarea> 
    </td> 
   </tr> 
   <tr> 
    <td width=\"500\" align=\"center\" height=\"21\" colspan=\"2\" background=\"http://mm2heaven.saburovo.com/forum/images/themes/coolblue/grad.gif\" style=\"border: 1 solid #000000\"> 
<input style=\" font-family: Verdana; font-size: 10 px\" type=\"submit\" name=\"edit\" value=\"Edit\" height=\"15\" class=\"mainoption\"> 
    </td> 
   </tr> 
  </table> 
</div> 
</form>"; 

   } 

     if($edit) { 
    if($remove){ 
         $remove = "DELETE FROM comments WHERE com_id = '$cid'"; 
             mysql_query($remove) or die(mysql_error()); 
     } else { 
         $update = "UPDATE comments SET comment = '$comupd' WHERE com_id = '$cid'"; 
       mysql_query($update) or die(mysql_error()); 
     } //removeclose 

echo"<META http-equiv=\"Refresh\" content=\"0;URL=$baselink/redirect.php?id=$id\">"; 
        
} //editclose 

   } else { //close usercom 

    echo"Acces denied"; 
   } 
} 
?>

  • RedRose
  • Registratie: Juni 2001
  • Niet online

RedRose

Icebear

Waarom neem je die dingen global? Waar staat $user? Een hele lap code, doe tussen php-tags: [php].

Tip1: haal die globals weg.

Tip2: gebruik sessions. (http://www.php.net/manual/en/ref.session.php)

Tip3: ik zie dat je al wel hidden form fields gebruikt. Dat is idd een manier om variabelen door te spelen naar de volgende pagina. gebruik i.p.v. global $usercom $_POST["usercom"]; enzovoort.

Sundown Circus


Verwijderd

Topicstarter
als ik sessies gebruik geeft ie:


Warning: Cannot send session cookie - headers already sent by (output started at /home/virtual/site5/fst/var/www/html/news/comment.php:1) in /home/virtual/site5/fst/var/www/html/news/comment.php on line 65

Warning: Cannot send session cache limiter - headers already sent (output started at /home/virtual/site5/fst/var/www/html/news/comment.php:1) in /home/virtual/site5/fst/var/www/html/news/comment.php on line 65

Die globals zijn het resultaat van hopeloze debugpogingen en die $user var bevind zich in newlog.php (de require file).

  • RedRose
  • Registratie: Juni 2001
  • Niet online

RedRose

Icebear

Op zondag 28 april 2002 14:04 schreef _DeviL_ het volgende:
als ik sessies gebruik geeft ie:


Warning: Cannot send session cookie - headers already sent by (output started at /home/virtual/site5/fst/var/www/html/news/comment.php:1) in /home/virtual/site5/fst/var/www/html/news/comment.php on line 65

Warning: Cannot send session cache limiter - headers already sent (output started at /home/virtual/site5/fst/var/www/html/news/comment.php:1) in /home/virtual/site5/fst/var/www/html/news/comment.php on line 65

Die globals zijn het resultaat van hopeloze debugpogingen en die $user var bevind zich in newlog.php (de require file).
Je moet ook eerst de header zenden en dan pas beginnen met je pagina. Verder: $user staat in newlog.php ???
En dan doe je dit:
PHP:
1
<?global $user; require('forum/newlog.php'); ?>

Zie de fout ;)

Sundown Circus


Verwijderd

Topicstarter
oh, bdoel je dat die global in newlog.php moet staan?

  • RedRose
  • Registratie: Juni 2001
  • Niet online

RedRose

Icebear

Op zondag 28 april 2002 14:09 schreef _DeviL_ het volgende:
oh, bdoel je dat die global in newlog.php moet staan?
LOLOL nee ... NA de require |:( .. en dan nog: hoe maak je $user aan dan?

Sundown Circus


Verwijderd

Topicstarter
die staat in de newlog.php file. ok, ik heb juist die file nog is gechekt, ik include die file file maar het is net of hij het niet doet, die file bevat <?php $username="test"; ?> maar wanneer ik vlak na de include die $username echo zegt ie dat die leeg is. Hoe komt dit????
Pagina: 1