ďťż

Potrzebny fachowiec PHP

       

Podstrony


telcocafe

Witam :)
Potrzebny mi programista dobrze znający PHP. Chce by napisał mi skrypt. Tak, więc chodzi mi oto, że chce zrobić pod stronie gdzie dostęp będą mieli zarejestrowani użytkownicy. Używam CMS jPortal. Dostęp będzie po naciśnięciu klawisza.
<form method="POST" action="mojawww.php"> Cośtam<br> <input name="imie"> <input type="SUBMIT" value="Uruchom"> </form>
Chodzi tylko oto żeby ten klawisz był dostępny jeżeli jest się zarejstrowanym.



może
<form method="POST" action="mojawww.php"> Cośtam<br> <input name="imie"> <? if(is_user_login()=='yes') { echo ' <input type=SUBMIT value=Uruchom>'; } else { echo ' <input type=SUBMIT value=Uruchom disabled>'; ?> </form>
Użytkownik _Herkules_ edytował ten post 27 marzec 2005, 20:29
No zaraz sprawdzę, dzięki.

Błąd:
Parse error: parse error in /data/members/free/tripod/uk/w/a/r/warcrafthome/htdocs/main.php(94) : eval()'d code on line 12

a cały plik main.php jest w <? ?> ? jeżeli tak to usuń to z tego kodu co podałem.



OK spróbuję.

No niestety teraz wyskoczył napis Cośtam, puste pole(to jest ok). Dalej
if(is_user_login()=='yes') { echo ' buttonik Uruchom i '; } else { echo ' i buttonik Uruchom.
Użytkownik muffy_3 edytował ten post 27 marzec 2005, 20:54
no to ew. spróbuj
echo' <form method="POST" action="mojawww.php"> Cośtam<br> <input name="imie">'; if(is_user_login()=='yes') { echo ' <input type=SUBMIT value=Uruchom>'; } else { echo ' <input type=SUBMIT value=Uruchom disabled>'; echo'</form>';

No niestety także nie działa. Chyba damy sobie spokój...

nie wiem gdzie dokładnie chcesz mieć ten formularz, przyjąłem, że na stronie głownej pod newsami więc.
otwórz plik index.php
następnie pod linią
<b><a href="news.php?news=add">dodaj news</a></b>]</div>'; echo '<br>';
dodaj
echo ' <form method="POST" action="add.php"> Cośtam<br> <input name="imie">'; if(is_user_login()=='yes') { echo'&nbsp;<input type="SUBMIT" value="Uruchom">'; } else { echo '&nbsp;<input type="SUBMIT" value="Uruchom" disabled>'; } echo'</form>';
po tych zmianach uzyskasz oczekiwany efekt.
Użytkownik _Herkules_ edytował ten post 01 kwiecień 2005, 16:00
Tak dokładnie oto mi chodziło :) . I kolejne pytanko co zrobić jeżeli ktoś dowie się o adresie tej strony(bardzo łatwo to sprawdzić) i wejdzie. Natomias jeżeli nie będzie zalogowany wywali go do innej stronki.
Użytkownik muffy_3 edytował ten post 02 kwiecień 2005, 15:32
Może
if(is_user_login()=='yes') { echo("<form>...</form>"); } else { echo("<script>window.location('index.php');</script>") ; }

Dodaj to do pliku add.php
Użytkownik R@fcio edytował ten post 02 kwiecień 2005, 18:10

if(is_user_login()=='yes') { echo("<form>...</form>"); } else { echo("<script>window.location('index.php');</script>") ; }

daj na początku strony:
<? if(is_user_login()!='yes') { header("Location: index.php"); exit; } ?>


daj na początku strony:
<? if(is_user_login()!='yes') { header("Location: index.php"); exit; } ?>

plik index.php - logowanie
<? $user = parse_ini_file("user.php"); if(isset($_POST["login"]) && isset($_POST["haslo"])){  if($_POST["login"] == $user["login"] && md5($_POST["haslo"]) == $user["haslo"]){ session_start();   $_SESSION["login"] = $_POST["login"];   $_SESSION["haslo"] = md5($_POST["haslo"]);   header("Location: panel.php"); exit;  }else{   echo "Zły login lub hasło"; die(); } } ?> <form action="index.php" method="post"><input type="text" style="width: 150px;" name="login"><input type="password" style="width: 150px;" name="haslo"> <input type="submit" value="Loguj"></form>
plik panel.php i każdy następny na początku strony:
<? $user = parse_ini_file("user.php"); session_start(); if(isset($_SESSION["login"]) && isset($_SESSION["haslo"])){  if($_SESSION["login"] != $user["login"] || $_SESSION["haslo"] != $user["haslo"]){   header("Location: index.php?msg=zle haslo"); exit;  } }else{   header("Location: index.php?msg=brak danych"); exit; } } ?> reszta strony
plik user.php
[logowanie] login = admin haslo = 098f6bcd4621d373cade4e832627b4f6 //wyraz kodowany funkcja md5

Podsumuje...
Zrobiłem to co chciałem... czyli button który jest aktywny jeżeli jesteś zalogowany.
<? echo ' <form method="POST" action="lal.php"> Aby weść musisz być zalogowanym<br>'; if(is_user_login()=='yes') { echo'&nbsp;<input type="SUBMIT" value="Wejdź">'; } else { echo '&nbsp;<input type="SUBMIT" value="Nie możesz wejść." disabled>'; } echo'</form>' ?>
Mój plik nazwałem lal.php(to dla próby). W tym pliku umieściłem:
<? if(is_user_login()='yes') { header("Location: index.php"); exit; } ?>
Z tego wnioskuje że jeżeli nie jestem zalogowany odeśle mnie do strony głównej. A kiedy będę wyskoczy mi puste okienko wszystko jest ok. Niestety mam błąd. To samo jeżeli stosuję ten sam kod.

nie wiem do czego ma służyć plik add.php ale nawet, jeżeli user odrazu wywoła ten plik z przeglądarki nie doda niczego. Bo nie ma zdefiniowanych zmiennych.
Ale na wszelki wypadek, dodaj do add.php
<? include('config.php'); if(is_user_login()=='yes') { echo 'zalogowany .. dalsza część skryptu'; } else { echo 'idz sie zaloguj'; } ?>

Cały czas ten sam błąd... Nie wiem, co się dzieje... Chodzi mi oto by dostęp do pliku lal.Php mieli tylko zarejestrowani użytkownicy... Dlatego zrobiłem taki buttonik. Niestety da się sprawdzić, do jakiej strony się odnosi. Tym samym może każdy zrobić w ten sposób http://mojawww.pl/lal.php. A ja tego nie chce, dlatego pytam o to, co zrobić by działo się tak jak z buttonem, że gdy jesteś nie zalogowany nie masz dostępu.

napisałem powyżej, mi to działa.


napisałem powyżej, mi to działa.

musisz zaincludowac plik config.php z katalogu głównego Jportala
Użytkownik _Herkules_ edytował ten post 02 kwiecień 2005, 20:31

musisz zaincludowac plik config.php z katalogu głównego Jportala

Includowanie to jest:
"wklejanie" kodu innej strony w miejsce gdzie jest ten kod.
Dla ciebie kod wygląda tak:
<?php include("config.php"); ?>

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.