PCMasters Hardware Forum > Software > GFX, Webdesign und Programmierung > Seite 6 > PHP Portal Script Hilfe

Im PC Forum registrieren


Produktsuche
IDEALO-PRODUKT-SUCHE
idealo preisvergleich
PCM News & Reviews
Antwort  
 
 
Alt 25.06.2010, 01:31
Benutzerbild von alflife2007
Threadersteller
alflife2007
 
Standard

PHP Portal Script Hilfe



Hi!

Ich habe mir seit langen mal wieder vorgenommen nen bissel mit php und mysql Datenbanken zu werkeln
Da habe ich mir überlegt was währe intressant und was mich vieleicht schon öfters gereitzt hat.

Bin schliesslich darauf gekommen das ich immer schon mit den gedanken gespielt habe ein Portal script zu erstellen ich hatte sorgar mal vor einigen Jahren angefangen eins zu erstellen. Die Daten sind jedoch verloren gegeangen mit den Jahren und entsprechen auch nicht mehr den vorstellungen die ich jetzt habe.

Meine Vorstellung an solch eine art von skript währe natürlich soll es für jeden leicht zu installieren und zu benutzen seien.
Dann soll man das Desing leicht und inviduell gestallten können das man erst erkennt das es ein Portal ist wenn man die copyrights sieht.

das portal soll alles beinhalten new,forum,guestbook usw.
was man halt alles so braucht und auch möglichkeiten externe scripts leicht einzibinden oder addons nachträglich einzubauen.

------Zum eigendlichen-------

Habe diesen Thread eröffnet weil mein php wissen dafür das ich mir das meiste aus dem stehgreif beigebracht habe ganz gut ist jedoch es immer die ein oder andere Frage giebt die man mit blosen googlen oder anderswo nachschlagen nicht so leicht beantwortet bekommt.

Werde hier Fragen oder probleme schildern und hoffen das mir dort geholfen werden kann da ich weis das hier nen paar helle köpfe hausen die sich ganz gut auskennen ^^.

nagut soviel dazu mal sehen die ersten probleme werden warscheinlich schon morgen auftauchen so wie ich mich kenne.

denke das erste problem wird bei den Templates endstehen wo ich noch nicht genau weis wie ich das mache soll aber mal sehen werd da erstmal drüber schlafen vieleicht komm ich selber drauf wunder giebts immer wieder ^^.

fg alfi
Alt Heute
Hardware Bot
Computer Informationen
 
Diese Werbung wird registrierten
Mitgliedern nicht angezeigt.
Werden Sie noch heute kostenlos Mitglied
auf PCMasters.de
Standard Weitere Informationen

 
Alt 25.06.2010, 14:14
Benutzerbild von xXxJulianxXx
xXxJulianxXx
 
Standard

wenn du fragen zu php,mysql,js,css hast, frag mich
 
Alt 25.06.2010, 17:27
Benutzerbild von alflife2007
Threadersteller
alflife2007
 
Standard

ja gerne ^^
das erste was ich gerne wissen würde ist folgenes:

ich arbeite mit templates "desing datein also html usw."

dort würde ich am liebsten überhaupt kein php drin haben also include´s für menu usw.

ich habe mal gesehn bei einem protal wo solche templates benutzt wurden das dort einfach zB.

{leftmenu} an der demensprechenden stelle in der desing datei stand wo das linke menu später auftauchen soll.

jetzt meine frage wie geht das muss man die dateien ihrgendwie prasen das er die wörter raussucht und mit eine "if" schleife dann den entsprechenden befehl in dem fall include auszuführen?

oder denk ich schonwieder zu kompliziert ^^.

hier mal der link zu dem projekt bzw wer will kann gucken wie es vorran geht ^^.

]

fg alfi
 
Alt 25.06.2010, 17:33
Benutzerbild von xXxJulianxXx
xXxJulianxXx
 
Standard

erstmal würde ich persönlich von table auf div umsteigen ^^
 
Alt 25.06.2010, 20:09
Benutzerbild von alflife2007
Threadersteller
alflife2007
 
Standard

und was bringt mir das?
ich mach das html mit dreamweaver cs4 weil denke viele endnutzer werden denke auch dreamweaver nutze und so bleibts dann 100% gewährleistet das er das richtig anzeigt.

meine frage ist allerdings noch nicht beantwortet ^^.

fg alfi
 
Alt 25.06.2010, 20:24
pixelflat
 
Standard

Dreamweaver benutzen höchstens irgendwelche Anfänger die kein HTML kennen und nur Seiten zusammen klicken wollen. Wer ein eigenes Web-Portal entwickeln will sollte schon mit einem Editor seinen eigenen Code schreiben. HTML ist jetzt nicht soo komplex, dass man dafür irgendeinen WYSIWYG-Editor bräuchte (abgesehen davon, dass damit niemals W3C-konformer Quelltext entsteht).

Der Vorteil von DIVs? Tabellen sind einfach Tabellen und nur zum Anzeigen von tabellarischen Daten gedacht - damit baut man kein Design. Außerdem macht mans Text-Readern beinahe unmöglich eine Seite anständig vorzulesen, die aus einem Dutzend geschachtelten Tabellen besteht (Stichwort Barrierefreiheit).
 
Alt 25.06.2010, 22:46
Benutzerbild von alflife2007
Threadersteller
alflife2007
 
Standard

ja sorry da muss ich mich mal reinfuchsen ich hab mich bisher immer damit zufrieden gegeben ^^.

aber im großen und ganzen betrifft das eh nur die templates. die sind derzeit eh nur sowas wie platzhalter oder testobjekte ^^.

das eigendliche problem ist die ganze php arbeit und das so zu machen wie ichs mir wünsche.

hab ja gesagt hab nur ein gefährliches halbwissen ^^

aber nochmal drauf hinzuweisen giebts neh möglichkeit wenn ich in einer datei die kein php nur reinen html code besitzt

ein bestimmtes wort aus dieser datei zu suchen und an dieser stelle dann ein php befehl hinzusetzen zb. include oder nen echo ausgabe.

fg alfi
 
Alt 25.06.2010, 23:51
Hagn
 
Standard

Ich hatte mir da mal ne kleine Funktion gebaut:

PHP-Code:
function template_replace($source$find$replace){
    return 
preg_replace("/\\$\\{".$find."\\}/",$replace$source);

Als $source wird ein Text angegeben in dem die zu ersetzende Variable ist (Die Variable wird von ${..} umschlossen). Die Variable wird in $find übergeben und wird mit dem in $replace übergebenen Wert überschrieben.

z.b. $source="Hallo ${text1}"
dann wird template_replace($source, "text1", "Welt")
"Hallo Welt" zurückliefern

Das ist nicht wirklich optimiert aber relativ einfach.
 
Alt 26.06.2010, 00:07
Benutzerbild von alflife2007
Threadersteller
alflife2007
 
Standard

joa also muss ich dann denk ich ja auch neh mit file() arbeiten da ich ja eine datei auslese die ich dan durch deinen befehl jagen werde ^^.

hab schon ähnlich gedacht muss noch mal genau überlegen wie ich den klein sprung mache diese daten dann zu nehmen ohne das ich neh datei übeschreibe und das in die ausgabe zu bringen.

naja bin grade eh verwirt giebt da mir sicherheit neh simple lösung :p
werd einfach mal rumprobieren ist imma noch das beste mittel ^^

fg alfi
 
Alt 26.06.2010, 14:03
Benutzerbild von xXxJulianxXx
xXxJulianxXx
 
Standard

du kannst es auch so machen

PHP-Code:
<?
define
("menu""ich bin das Menü");
echo 
menu//ausgabe "ich bin das Menü".
?>
 
Alt 26.06.2010, 14:21
Benutzerbild von alflife2007
Threadersteller
alflife2007
 
Standard

aber so krieg ich doch bestimmt nicht hin das die abfrage ein php befehl wie "include" dort ausspuckt ^^

fg alfi
 
Alt 30.06.2010, 19:50
Benutzerbild von alflife2007
Threadersteller
alflife2007
 
Standard

so hänge grade nen bisschen!
und zwar wollte ich mit den seitenmenues etwas weiter machen!
Problem ich will über die datenbank php befehle ausgeben.

zum beispiel <? include "datei.php"; ?> soll ich der datenbank stehen und dann normal ausgeben werden nur das logischer weise wenn ich das so mache man den code sehen kann aber der befehl nicht ausgeführt wird.

ich will gerne include befehle in die datenbak schreiben können um später leicht und einfach die seite per datenbank zu verändern wie es mir gefällt.

die frage ist nur ob das möglich ist und wie wenn das in eine art bb-code ginge wie zB. [include=xxx.php] währe das echt klasse.

fg alfi
 
Alt 30.06.2010, 19:56
pixelflat
 
Standard

Warum speicherst du nicht einfach nur den Dateinamen in der Datenbank? Dann kannst du mit include($bla) arbeiten.
Folgende User haben sich für den guten Beitrag bedankt:
 
Alt 30.06.2010, 20:47
Benutzerbild von alflife2007
Threadersteller
alflife2007
 
Standard

gute idee xD

manchmal sieht man den wald vor lauter bäumen net danke ^^

fg alfi
 
Alt 08.07.2010, 17:05
Benutzerbild von alflife2007
Threadersteller
alflife2007
 
Standard

hi! so hab mal wieder nen paar probs ^^.

jetzt gehts um ein php/mysql basierendes login script mit sessions.

hab bisher noch nix mit sessions gemacht daher sehr planlos!

daher bin ich erstmal einer anleitung gefolgt um zu schauen wies geht:

]

aber das problem ist es geht nicht ^^

]

nick: admin
pw: test

das prob kommt nachdem man sich einloggt auf der geheim.php

Warning: session_start() [ ]]: Cannot send session cache limiter - headers already sent (output started at /kunden/291204_23566/webseiten/geheim.php:2) in /kunden/291204_23566/webseiten/geheim.php on line 4
Sie sind eingeloggt.

sehe zwar das es um den befehl sessions geht aber weis net warum oder was das genau zu bedeuten hat.

hat wer nen plan was fürn fehler ich gemacht habe?

fg alfi
 
Alt 08.07.2010, 18:00
pixelflat
 
Standard

Quelltext wäre ganz hilfreich...

Mal ins Blaue geschoßen: du kannst session_start() nur am Anfang einer Datei (bevor überhaupt irgendetwas anderes an den Browser gesendet wird) und dementsprechend nur ein mal pro Datei schreiben. Spontan rate ich mal du hast da wild ineinander includiert und in einer 2. Datei ebenfalls session_start() stehen.
 
Alt 08.07.2010, 18:14
Benutzerbild von alflife2007
Threadersteller
alflife2007
 
Standard

also daran kanns net liegen ^^
ich hab das zum testen 1 zu 1 nachgemacht past/copy "natürlich mysql ect angepasst"

und in jeder datei steht session an erster stelle genau wie es dort angegeben wird.

fg alfi
 
Alt 08.07.2010, 19:50
pixelflat
 
Standard

Ohne Quelltext zu sehen kann man das nur erraten...

Bist du sicher, dass vor dem session_start() (und vor dem <?php) nichts steht? Auch keine nicht druckbaren Zeichen?

Der Code selbst sollte einwandfrei funktionieren...

Edit: Du hast zumindest in genau den betreffenden Dateien vor der Warnung ein <br /> und ein \n stehen. Ob das jetzt von der Warnung kommt oder tatsächlich in den Dateien steht weiß ich nicht.

Geändert von pixelflat (08.07.2010 um 19:53 Uhr).
 
Alt 08.07.2010, 20:20
Benutzerbild von alflife2007
Threadersteller
alflife2007
 
Standard

lol sowas xD
hab im quelltext nen zeilenbruch mitkopiert aber net gedacht das das der fehler sein könnte weil ja kein <br> oder sonstiges dort steht ^^

---

jetzt die frage wie kriege ich von dem eingeloggten user den usernamen bzw einträge aus seiner tabelle wenn er einloggt?

damit ich sowas wie eine begrüßung machen kann und oder spezielle rechte erstelln kann damit einige leute mehr oder weniger sehen.

hier mal die quellcodes der dateien:

sessionhelpers.inc.php
PHP-Code:
<?php


/**
 * @return void
 */
function connect () {
    
$con mysql_connect('localhost''nick''pass') or exit(mysql_error());
    
mysql_select_db('datenbank'$con) or exit(mysql_error());
}


/**
 * @param string $name
 * @param string $pass
 * @return boolean
 */
function check_user $name$pass ) {
    
// magic quotes anpassen
    
if ( get_magic_quotes_gpc() ) {
        
$name stripslashes($name);
        
$pass stripslashes($pass);
    }
    
// escapen von \x00, \n, \r, \, ', " und \x1a
    
$name mysql_real_escape_string($name);
    
// escapen von % und _
    
$name str_replace('%''\%'$name);
    
$name str_replace('_''\_'$name);

    
$sql 'SELECT UserId FROM users WHERE UserName = \'' $name '\' AND UserPass=\'' md5($pass) . '\'';
    if ( !
$result mysql_query($sql) ) {
        exit(
mysql_error());
    }
    if ( 
mysql_num_rows($result) == ) {
        
$user mysql_fetch_assoc($result);
        return ( 
$user['UserId'] );
    } else {
        return ( 
false );
    }
}


/**
 * @param int $userid
 * @return void
 */
function login $userid ) {
    
$sql 'UPDATE users SET UserSession = \'' session_id() . '\' WHERE UserId = ' . ((int)$userid);
    if ( !
mysql_query($sql) ) {
        exit(
mysql_error());
    }
}


/**
 * @return boolean
 */
function logged_in () {
    
$sql 'SELECT UserId FROM users WHERE UserSession = \'' session_id() . '\'';
    if ( !
$result mysql_query($sql) ) {
        exit(
mysql_error());
    }
    return (
mysql_num_rows($result) == 1);
}


/**
 * @return void
 */
function logout () {
    
$sql 'UPDATE users SET UserSession = NULL WHERE UserSession = \'' session_id() . '\'';
    if ( 
mysql_query($sql) ) {
        exit(
mysql_error());
    }
}

connect();

?>
login.php
PHP-Code:
<?php

include_once('sessionhelpers.inc.php');

if ( isset(
$_POST['login']) ) {
    
$userid check_user($_POST['username'], $_POST['userpass']);
    if ( 
$userid ) {
        
login($userid);
    } else {
        echo 
'<p>Ihre Anmeldedaten waren nicht korrekt!</p>';
    }
}

if ( !
logged_in() ) {
    echo <<<END
<form method="post" action="index.php?site=$site">
<label>Benutzername:</label> <input name="username" type="text"><br />
<label>Passwort:</label> <input name="userpass" type="password" id="userpass"><br />
<input name="login" type="submit" id="login" value="Einloggen">
</form>
END;
} else {
    echo 
'<p><a href="index.php?site=logout">Ausloggen</a></p>';
}

?>
geheim.php
PHP-Code:
<?php

include_once('sessionhelpers.inc.php');

echo 
'Sie sind ';
if ( !
logged_in() ) {
    echo 
'nicht ';
}
echo 
'eingeloggt.<p />';

if ( !
logged_in() ) {
    echo 
'<p><a href="login.php">Anmelden</a></p>';
}



if ( 
logged_in() ) {
    echo 
'<p>Geschützter Bereich</p>';

    echo 
'<p><a href="logout.php">Ausloggen</a></p>';
}

?>
der session_start befehl ist in einer anderen datei .


fg alfi

Geändert von alflife2007 (08.07.2010 um 21:14 Uhr).
 
Alt 10.07.2010, 21:16
Benutzerbild von alflife2007
Threadersteller
alflife2007
 
Standard

hat da keiner nen plan ich verzweifel xD
ich muss das ihrgendwie so hinbekommen das ich den namen des eingeloggten anzeigen kann und evtl auch neh andere spalte in der tabelle.

ich steig durch das scrpt noch net ganz durch bzw. wie ich das verändern muss damit das dan so funzt wie ichs haben will.

fg alfi
hardware forum Neue Frage stellen?
Kurze Zusammenfassung der Frage:
Bitte wählen Sie eine Kategorie:
Mailadresse:
Ihre Frage:
Ihre Frage wird als Gast gespeichert. Sollte eine Antwort im Forum erfolgen, bekommen Sie diese per Email zugeschickt.


Zufällige Frage
Um auf dieses Thema zu ANTWORTEN
bitte sich zuerst » hier kostenlos registrieren!!

Antwort

Tags: , , , ,

Ähnliche Tags: , ,


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
(PHP) Problem mit Script! DarkRaver GFX, Webdesign und Programmierung 3 02.04.2010 14:10
Hilfe bei php Tabelle JuL GFX, Webdesign und Programmierung 6 27.04.2009 17:50
Hilfe Hilfe AVM sascha_25 Hardware Allgemein 0 10.01.2009 11:57
Script gesucht.. sommergemüse GFX, Webdesign und Programmierung 3 05.03.2006 16:51
[Tutorial] PHP StuFF Compiler GFX, Webdesign und Programmierung 9 05.01.2005 20:05


Sie betrachten gerade: PHP Portal Script Hilfe


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:14 Uhr.



Im PC Forum registrieren