Er der nogle der ved hvordan jeg laver en SESSION, så jeg kan trække data ud i et tekstfelt, så det er nemmere at update/redigere. Jeg kan sagtens finde ud af det, ved et login. Men ikke når jeg skal lave en session til en anden database, end den man logger ind med.
Når du skriver: Bare trække data ud af velkomst. Hvad er velkomst så ? Hvis vi snakker om en admin funktion, så skal du jo tjekke login. Og er login korrekt, så viser du nogle felter med data som de er i dag. Giver brugeren lov til at rette data og overskriver de gamle data. Men måske jeg misforstår.
if(!isset($_POST['Submit'])) { //Tester om brugeren kom fra index.html echo "Du skal komme fra index.php"; }else{ $postbruger = $_POST['brugernavn']; $postpass = $_POST['password']; //For læservenligheden overføres post variablerne til normale variabler
$resultat = mysql_query("SELECT id FROM `admin` WHERE brugernavn = '$postbruger' AND password = '$postpass'");//Spørger efter ID
$number = mysql_num_rows($resultat);//Tæller antaller af resultater if($number == 1) { //Hvis der kun er et resultat, bliver brugeren logget in $_SESSION['loget_in'] = 1; $_SESSION['brugernavn'] = $postbruger; $_SESSION['password'] = $postpass; //Sætter session variablerne echo "Hej $postbruger. Du er nu logget ind:"; ?> <br><br> <a href="velkomst.php">Vil du redigere din velkomst ?</a><br> <a href="opret-nyhed.php">Vil du skrive en nyhed ?</a><br> <br> <a href="logud.php">Log ud</a> <?
}else echo"De indtastede oplysninger er ikke korrekte"; } ?>
Her laver den jo en SESSION. Men er det her jeg skal tilføje noget, at at jeg kan gå ind på velkomst.php, og få gjort sådan at jeg kan trække min database "velkomst" ud i tekstfeltet, så jeg kan redigere denne.
Og hvad er velkomst ? Er det et felt i en tabel, som bliver vist som velkomst til alle brugere ?
Hvis ja, så kan du f.eks. lave:
<?php session_start(); if($_SESSION['admin']){ //Træk feltet ud fra DB //Lav en form med action="opdater.php" <input type="text" name="velkomst" value="DATA_FRA_TABELLEN" /> //Submit knap. } ?>
<?php //opdater.php //Tjek for admin. //opdater feltet i tabellen, med $_POST['velkomst'] ?>
Det er derfor jeg har et problem, med at få forbundet min session, til en anden tabel end den som der bliver forbundet til ved mit login. Derfor kan jeg ikke få hentet mine oplysninger fra tabellen velkomst ud i et tekstfelt.
Du har altså 2 tabeller, en som de alm. bruger ser, og en som admin ser. Kan du give et eksempel på hvordan din database "velkomst" og "den anden tabel" ser ud hvis det da ikke er den samme.
Min tabel velkomst har bare 2 felter, et id og et tekstfelt, hvor selve velkomsten står i.
Jeg skal have gjort sådan, at når du logger ind som admin, skal du kunne redigere den. Kort fortalt. Og ovenfor kan i se hvilken SESSION jeg bruger når jeg logger ind.
Det fungere sådan: if ($_SESSION['loget_in'] == 1) tjekker om du er logget ind if ($_SESSION['brugernavn'] == "dit brugernavn" && $_SESSION['password'] == "dit kodeord") Her skriver du dit brugernavn og adgangskode, hvis det der er i SESSION stemmer med if () så forsætter den. Du kan eventuelt tilføje en else { } hvor den udskriver velkomst til de bruger som ikke er admin.
if ($_GET['rediger'] == "send") hvis du har trykket på opdater knappen sker dette.
while($row = mysql_fetch_assoc($query)) { } udskriver det der står i databasen.
Prøv dette så: if ($_SESSION['loget_in'] == 1) { if ($_SESSION['brugernavn'] == "dit brugernavn" && $_SESSION['password'] == "dit kodeord") { if ($_GET['rediger'] == "send") { //MySQL som opdatere siden }
//MySQL som opretter forbindelse til din database while($row = mysql_fetch_assoc($query)) { echo ' <form action="side.php?rediger=send" method="post"> <textarea name="velkommen" style="width:100px;height:300px;"> '.$row['tekstfelt'].' </textarea> <input type="submit" value=" Opdater "> </form> '; } } else { //MySQL som opretter forbindelse til din database while($row = mysql_fetch_assoc($query)) { echo $row['tekstfelt']; } } else { echo 'Du er ikke logget ind'; }
Jeg bliver ikke rigtig klog på hvad problemet er lige nu :D Kan jeg ikke få hele din PHP kode igen så skal jeg se hvad jeg kan gøre :D Men har du husket at logge ind og udfylde brugernavn og password if felet i din kode, det kunne være at du slet ikke var logget ind ;D
Hmm. Prøv skriv en mail til mig på n-haarup@hotmail.com. så kan jeg lige sende dig filerne, hvor man logger ind, hvor der bliver tjekket login, og så denne her velkomst. Hvis det var det du tænkte på?
For min skyld kan vi godt lukke, så vidt jeg husker kom der ikke noget ud af kontakten men jeg skal være ærlig og sige at jeg ikke rigtig kan huske det, det er jo lang tid siden splazz.
ja det er sq længe siden, vi må se om spørger vender tilbage, ellers kommer vi jo ikke videre alligevel :S
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.