Zum Inhalt springen

DanielH

Mitglieder
  • Gesamte Inhalte

    619
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von DanielH

  1. Hi, wenn du ein modulares system bauen willst, musst du dir erstmal gedanken über die benötigten Module machen. Der nächste Schritt ist dann, wie diese untereinander verbunden werden sollen, und wie sie sich ggf. gegenseitig beeinflussen oder steuern. (z.B. zum Thema CPU gibt es keine Downloads, also erscheint kein Link etc. ) Wenn du die Module und die Zusammenhänge kennst, sollten auch die benötigten Daten bekannt sein, also Datenbankentwurf. Als letztes sollte das Design entstehen, wobei grundsätzlich hierbei die Überlegung nach dem "wie die Daten ins Design bringen" steht. (Templates ? Daten direkt im Script ausgeben etc. ) Das war bisher immer meine Herangehensweise an solche Projekte. MfG
  2. Hi, die verwendete Version von PHP kann auch ein Grund sein. seit PHP 4.0.3 haben sich die Variablen, in denen die Upload-Dateien und die Informationen stehen, geändert. Dort ist in der ini "track_vars" standardmäßig aktiviert. $HTTP_POST_FILES["variable_eigenschaft"] MfG
  3. Was genau willst du denn Abfragen ? Würde es vieleicht auch mit einer switch()-Anweisung gehen ? MfG
  4. DanielH

    Schwerelos

    Doch Experimente gab es dazu. Es ging dabei um die Verbesserung von Verbrennungsmotoren, wobei mir dieser Zusammenhang vollkommen schleihaft ist. Und dann gab es da ja noch den Brand auf der Mir... MfG
  5. DanielH

    Schwerelos

    Hi, Feuer brennt im All mit runder Flamme und auch heiser, weil die warme Luft dort nicht aufsteigt, da sie ja ebenso schwerelos ist. Die Runde Flamme ist auf Mangelnde Konvektionsströmungen zurückzuführen, welche für die "Aufrichtung" der Flamme auf der Erde zuständig sind. Bilder fallen mir aber keine dazu ein. MfG
  6. Ich nehme mal an der Beitrag wird gleich verschoben aber: <input type="text" style="border:0pt"> Und schon ist der Rahmen weg. kannst aber auch ne andere Farbe oder Hintergrundfarbe, Schriftgröße usw. vergeben. MfG
  7. Hi, ganz einfach: Schaltfläche einfügen ( Ich hab sie "Schaltfleache_Word" genannt ) Private Sub Schaltfleache_Word_Click() On Error GoTo Err_Schaltfleache_Word_Click Dim stAppName As String stAppName = "word.exe c:\pfad\zu\dokument.doc" Call Shell(stAppName, 1) Exit_Schaltfleache_Word_Click: Exit Sub Err_Schaltfleache_Word_Click: MsgBox Err.Description Resume Exit_Schaltfleache_Word_Click End Sub Dieses Makro hinterlegen. MfG
  8. Die Gültigkeitsprüfung findet auf jeder Seite statt, wo man sie benötigt Einfach includen, und in der Include-Datei hab ich dann noch folgenden Code eingebaut: (empty($HTTP_GET_VARS["sid"]) ? userauth("") : userauth($HTTP_GET_VARS["sid"])); [/PHP] Somit braucht man sich um nix mehr zu kümmern.
  9. Ja, per ODBC. Die Access-DB als ODBC-Datenquelle definiert, und schon kann man aus PHP zugreifen. http://php3.de/manual/de/ref.odbc.php hier ist mal die Liste der ODBC-Funktionen, und wie man sie verwendet. MfG
  10. Das geht einmal ohne weiters mit Sessions, zum anderen liese sich auch eine Datenbank nutzen. An die Sessiondateien sollte eigentlich kein User herankommen, weil das entsprechende Verzeichniss für gewöhnlich ausserhalb des doc-root abgelegt wird, und die dateien auch keine endung haben, also vom Browser wie ein nicht gefundenes Verzeichnis behandelt werden würden. Persönlich bevorzuge ich Datenbanken, da man diese Daten dann auch noch für andere Sachen nutzen kann. (z.B. wieviele sind online und solche Sachen) Übergaben wird dann nur die session id oder die entsprechende id des Datensatzes MfG
  11. Eigentlich einfach: Access ist eine Desktop-Datenbank, MySQL ist ein Datenbankserver und für sehr viele Connects, also viele User gleichzeitig ausgelegt. Access verkraftet zwar auch mehrere Zugriffe, aber ist eigentlich nicht dafür gedacht und gibt dann auch schnell mal den Geist auf. MfG
  12. Na so z.B. echo "<input type=\"hidden\" name=\"userid\" value=\"".$db_result["userid"]."\">"; und im nächsten Script hast du dann $_POST["userid"] MfG
  13. Wenn du noch ein hidden-feld mit einbaust, das du userid oder den namen beinhalted, kannst du die Nummern beim select-namen doch nutzen. Oder habe ich jetzt überhaupt nicht geblickt was du da vorhast ? :confused: MfG
  14. @slayer8 du solltest aber nicht vergessen, die session-id manuell an deine Links anzuhängen. Wenn dein Hoster keine session-dateien zulässt, könnte auch das automatische anhängen deaktiviert sein. MfG
  15. Das Cookie liegt auf dem Client. Es wird zum automatischen Login benutzt. Dürfte hier im Board auch so oder ähnlich laufen. MfG
  16. Hi, über eine Datenbank ist es eigentlich recht einfach. Du generierst eine Sessionid und speicherst diese zusammen mit userdaten in der Datenbank ab. Genauso wie du es auch mit den sessions machst. <?PHP function userauth($sid){ global $db; global $auth; $db->query("SELECT id, name, sessid, lastvisit, lastactive FROM user_online WHERE sessid = '$sid'"); $row=$db->fetch(); $db->free(); if(!empty($row["id"])){ $i=0; $i++; $auth["user"][$i]["lastvisit"] = $row["lastvisit"]; $auth["user"][$i]["id"] = $row["id"]; $auth["user"][$i]["name"] = $row["name"]; $auth["user"][$i]["sessid"] = $row["sessid"]; $auth["user"][$i]["check"] = 1; $db->query("INSERT INTO user_online (id,name,sessid,lastvisit,lastactive) VALUES ('".$row["id"]."','".$row["name"]."','".$row["sessid"]."','".$auth["user"][$i]["lastvisit"]."','".time()."'"); $db->free(); } else { //User noch nicht online //existiert ein Cookie ? if(isset($User)){ //User automatisch einloggen $db->query("SELECT id, name, sessid FROM any_user_table WHERE sessid = ".$HTTP_COOKIE_VARS["sessid"].""); $row=$db->fetch(); $db->free(); //Prüfen, ob sessid aus Cookie auch existiert if(!empty($row["id"])){ $i=0; $i++; $auth["user"][$i]["lastvisit"] = $User["lastvisit"]; $auth["user"][$i]["id"] = $row["id"]; $auth["user"][$i]["name"] = $row["name"]; $auth["user"][$i]["sessid"] = $row["sessid"]; $auth["user"][$i]["check"] = 1; $db->query("INSERT INTO user_online (id,name,sessid,lastvisit,lastactive) VALUES ('".$row["id"]."','".$row["name"]."','".$row["sessid"]."','".$HTTP_COOKIE_VARS["lastvisit"]."','".time()."'"); setcookie ("User[sessid]", $row["sessid"], time()+31536000); setcookie ("User[lastvisit]",time(), time()+31536000); } else { //User ist "Gast" $i=0; $i++; $auth["user"][$i]["check"] = 0; } } else { //User ist "Gast" $i=0; $i++; $auth["user"][$i]["check"] = 0; } } //Alle rausschmeissen, die länger als 10 Min inaktiv waren. $past = time()-600; $db->query("DELETE FROM user_online WHERE lastactive < $past"); } ?> [/PHP] Hier mal eine Userauthentifizierung mit MySQL-Datenbank (über Abstraction-Layer) MfG
  17. Ein Login per FTP sollte da klarheit verschaffen. Bei manchen, stellenweise eigenartigen Konfigurationen ist der root dann z.B. "htdocs" und muss dann von PHP so angesprochen werden. Schau mal nach, ob du nach dem login noch eine ebene höher gehen kannst. Ansonsten "./" oder garnix. (wenn es danach noch weiter geht, solltest du deinen Provider vielleicht darauf hinweisen) MfG
  18. @Jaraz ist richtig, ich wollte aber den Quelltext leicht verständlich halten. Optimieren kann man da natürlich noch eine Menge. Mann könnte das ganze in eine Funktion auslagern, die nur das Blättern organisiert und so weiter. Aber trotzdem muss man erstmal verstehen wie es geht. Und das geht am einfachsten mit leichtem Quelltext, finde ich. MfG
  19. Hi, du musst die aktuelle position an die nächste bzw. vorherige Seite übergeben: Beispiel dafür: <?php mysql_connect("host","username","password"); mysql_select_db("database"); $select = mysql_query("select * from tabelle"); $reihen = mysql_num_rows($select); $zeigen = floor($reihen / 5); if(!$start) { $start = 0.1; } $result = mysql_query("select * from tabelle limit $start,5"); echo "<table>"; while ($zeile = mysql_fetch_array($result)) { echo "<tr><td>$zeile[3]</td></tr>"; } echo "</table>"; if($start > 0.1) { $zurueck = $start - 5; echo "<a href=\"$PHP_SELF?start=$zurueck\"><< Zurück</a>"; } for($i = 0; $i <= $zeigen; $i++) { echo " <a href=\"$PHP_SELF?start=$n\">$i</a> "; $n += 5; } $weiter = $start + 5; if($reihen > $weiter) { echo "<a href=\"$PHP_SELF?start=$weiter\">Weiter >></a>"; } ?> [/PHP] MfG
  20. Hi, ich würde es auf mal auf den Pfad schieben, das es nicht geht. Zeigt denn das document root auf das verzeichniss unterhalb von /www ?
  21. $_SERVER, $_GET usw. sind arrays und werden per eckigen Klammern angesprochen. bei getenv('REMOTE_ADDR') kannst du runde Klammern nehmen. MfG
  22. Mit den einstellungen ist soweit alles i.Ordnung. Ausser: den Safemode solltest du gerade bei NT vielleicht doch einschalten... Schau doch mal in deinen Temporary Internet Files, ob da überhaupt Cookies vom Board gelandet sind. Die einstellungen für die Cookies müssen heissen: cookie domain: aloka.dyndns.org cookie path: pfad/zum/forum ab dem docroot. MfG
  23. Werden sessions verwendet zur User-Identifizierung ? wenn ja, checke in der ini mal die Einstellungen für session_save_path und enable_trans_sid Andernfalls ist es auch noch möglich, das die Cookieeinstellungen des Forums selbst noch nicht in ordnung sind. MfG
  24. Und welche PHP-Version ist nun bei Foxserv dabei ? Kenne das nicht weil mein Server ein Apache 1.3.wasweissich ist und unter FreeBSD 4.6 läuft. PHP hat seit Version 4.2.x die Änderung, wie es oben im Link beschrieben ist. Und dort kann man globale Variablen standardmäßig nur über das entsprechende array ansprechen. Wenn dann auch noch die debug-Variante der ini unter Windows genutzt wird, nützt das ändern von register_globals nur im Zusammenhang mit einer Reihe anderen Variablen etwas. Aber wie gesagt, was Foxserv da so treibt weiss ich nicht. MfG

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...