need help

noname

Mitglied
Hi !

Ich hab folgendes Problem !

PHP:
<?php

session_start (); // Starte eine Session.
$tabelle = "members";

$dbverbindung = mysql_connect ($host, $user, $password);
$dbanfrage = "SELECT * from $tabelle WHERE (nickname like '$nickname') AND (passwort = '$passwort')";
$result = mysql_db_query ($dbname, $dbanfrage, $dbverbindung);
$ausgabe = mysql_fetch_array ($result);

 if (mysql_num_rows ($result) > 0)
 {
  $datenrichtig = true;
  $user_eingeloggt = true;
  $access = $ausgabe[access];
 }
 else
 {
  $datenrichtig = false;
  $user_eingeloggt = false;
 }

session_register ("user_eingeloggt AND access='$ausgabe[access]'");

?>
<?php

 if ($datenrichtig)
 {
  print ("<meta http-equiv='Refresh' content='2; url=index.php?action=admin'>
<table border='0' cellpadding='2' cellspacing='2' width='100%'>
<tr>
  <td width='100%' style='border-bottom: 1 solid #929292'>
   <b>-» </b>
   <b>Admininterface</b>
  </td>
 </tr>
<tr>
  <td width='100%' align='right'>
   <img border='0' src='images/text/admininterface.jpg'>
  </td>
 </tr>
<tr>
  <td width='100%' height='30'>
  </td>
 </tr>
<tr>
  <td width='100%'><div align='center'>
 <center>
 <table border='0' cellpadding='2' cellspacing='0' width='400'
 style='border: 1 solid #929292'>
  <tr>
   <td width='100%' bgcolor='#F7F7F7'>Erfolgreich</td>
  </tr>
  <tr>
   <td width='100%' align='center'>Du hast dich erfolgreich eingeloggt. In 2
    Sek. wirst du weitergeleitet.</td>
  </tr>
 </table>
 </center>
</div>
  </td>
 </tr>
</table>");
 }
 else
 {
  print ("<table border='0' cellpadding='2' cellspacing='2' width='100%'>
<tr>
  <td width='100%' style='border-bottom: 1 solid #929292'>
   <b>-» Admininterface</b>
  </td>
 </tr>
<tr>
  <td width='100%' align='right'>
   <img border='0' src='images/text/admininterface.jpg'>
  </td>
 </tr>
<tr>
  <td width='100%' height='30'>
  </td>
 </tr>
<tr>
  <td width='100%'><div align='center'>
 <center>
 <table border='0' cellpadding='2' cellspacing='0' width='400'
 style='border: 1 solid #929292'>
  <tr>
   <td width='100%' bgcolor='#F7F7F7'>Fehler</td>
  </tr>
  <tr>
   <td width='100%' align='center'>Beim Einloggen ist ein Fehler aufgetreten, versuch es noch einmal.<br>
    <a href='javascript:history.go(-1)'>zurück</a></td>
  </tr>
 </table>
 </center>
</div>
  </td>
 </tr>
</table>");
 }

?>

Das Login funktioniert auch eigentlich nur das mit der Userabfrage nicht.

Folgendes steht auf den seiten, die geschützt werden sollen.

PHP:
<?php
session_start (); // Session starten.

 if ((session_is_registered ("user_eingeloggt")) AND ($user_eingeloggt) AND ($access == "100" OR $access == "40"))
 {
include ("admin/sites/joinus/include/index.php");
 }
 else
 {
  print ("<table border='0' cellpadding='2' cellspacing='2' width='100%'>
<tr>
  <td width='100%' style='border-bottom: 1 solid #929292'>
   <b>-» </b>
   <b>Admininterface</b>
  </td>
 </tr>
<tr>
  <td width='100%' align='right'>
   <img border='0' src='images/text/admininterface.jpg'>
  </td>
 </tr>
<tr>
  <td width='100%' height='30'>
  </td>
 </tr>
<tr>
  <td width='100%'><div align='center'>
 <center>
 <table border='0' cellpadding='2' cellspacing='0' width='400'
 style='border: 1 solid #929292'>
  <tr>
   <td width='100%' bgcolor='#F7F7F7'>Du bist noch nicht eingeloggt !</td>
  </tr>
  <tr>
   <td width='100%' align='center'>
    <form action='index.php?action=login' method='POST'>
    <table border='0' cellpadding='2' cellspacing='0' width='100%'>
     <tr>
      <td width='100'>Nickname :</td>
      <td><input type='text' size='45' name='nickname' class='textarea'></td>
     </tr>
     <tr>
      <td width='100'>Passwort :</td>
      <td><input type='password' size='45' name='passwort' class='textarea'></td>
     </tr>
     <tr>
      <td width='100'></td>
      <td></td>
     </tr>
     <tr>
      <td width='100'><input type='submit' value='Login' class='button'></td>
      <td></td>
     </tr>
    </table>
   </form>
   </td>
  </tr>
 </table>
 </center>
</div>
  </td>
 </tr>
</table>");
 }

?>

Was ich genau damit machen will erkläre ich jetzt :

Also, ich habe in meiner mySQL folgendes stehen.

Tabelle : Members in ihr stehen nickname und passwort und acces = ...

Das Access ist folgendermaßen aufgebaut : 100 Superuser 40 Newsposten usw...
So stehen sie in der Tabelle : 40; 20; 30; z.b.

Jetzt darf der User 40(news post), 20(votes posten), 30(member eintragen), er darf aber nicht 50(members löschen)

Wie kann ich da die Abfrage programmieren ?? Bitte nach dem obigen Schema...

bitte um hilfe...cu@all
 
editier mal das ganze html-gesocks da weg, das interessiert niemanden und ist unwichtig!


was soll eigentlich folgende zeile bewirken?
PHP:
session_register ("user_eingeloggt AND access='$ausgabe[access]'");
 
PHP:
<?php

session_start (); // Starte eine Session.
$tabelle = "members";

$dbverbindung = mysql_connect ($host, $user, $password);
$dbanfrage = "SELECT * from $tabelle WHERE (nickname like '$nickname') AND (passwort = '$passwort')";
$result = mysql_db_query ($dbname, $dbanfrage, $dbverbindung);
$ausgabe = mysql_fetch_array ($result);

 if (mysql_num_rows ($result) > 0)
 {
  $datenrichtig = true;
  $user_eingeloggt = true;
  $access = $ausgabe[access];
 }
 else
 {
  $datenrichtig = false;
  $user_eingeloggt = false;
 }

session_register ("user_eingeloggt AND access='$ausgabe[access]'");

?>
<?php

 if ($datenrichtig)
 {
  print ("");
 }
 else
 {
  print ("");
 }

?>


Ich habe mir damit gedacht, dass er die daten von user_eingeloggt und die access rechte in der session speichert. Er trägt auch alles in der Session ein nur irgendwie funktioniert es doch nicht so...

Folgendes steht in der Session TMP Datei...

PHP:
user_eingeloggt|b:1;!user_eingeloggt, access='100'|!user_eingeloggt AND access='100'|

ich kann damit leider nicht so viel anfangen...

cu
 
session_register registriert eine variable, du hast oben ein string+eine variable, also schmarrn so.

ausserdem: editier den 1. post, und nächstes mal aussagekräftigere titel für das topic.

registrier einfach 2 variablen

session_register(eingeloggt);
und session_register(deineandrevar);
 
cool, jetzt funzt es schon fast...

nur noch eine frage hab ich ! was muss ich in der datenbank eingeben ??

10; 20; 30

jetzt könnte der user mit diesem eintrag "votes posten, news posten, members posten"

oder wie muss ich das eingeben ?

bis jetzt geht es nämlich nur mit einer zahl. Da ich aber in der mySQL Abfrage folgendes drinne habe :

Memberseite :
PHP:
if ((session_is_registered ("user_eingeloggt")) AND ($user_eingeloggt) AND ($access == "100" OR $access == "30"))

er soll also aus der tabelle "access" in der datenbank raussuchen, welche zahlen vorhanden sind. wenn die 100 drinne steht, soll er die Seite freigeben. Wenn die Zahl 30 drin steht, soll er die Seite ebenfalls freigeben. Und das tut er bis jetzt nicht.

Es geht eben nur, wenn nur eine Zahl z.b: 100 in der Tabelle stehen...

Kann ich das mit 100 OR 30 OR 20 OR ... machen ???

cu
 
Zurück