Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl


zyxwvu
Napisane: 21.06.2002, 16:34:51





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Z MOJEJ książki do php wynika, że w php są wskaźniki, to tak pisałem, więc proszę bluzgi kierować do sz. p. Leona Atkinsona, a nie do mnie.

BTW. Oszczędziłbyś mi może tych kilku sekund (więcej, bo uruchomienie serwera, przeglądarki, edytora, wpisania kilku linii kodu, to jakieś pół minuty wychodzi smile.gif) i tych kilkunastu bajtów w bazie i napisał Tak, lub Nie. Po co komplikować życie? Ale OK - sprawdzę i nie będę was tu dręczył takimi pytaniami.
  Forum: PHP · Podgląd postu: #4344 · Odpowiedzi: 6 · Wyświetleń: 1 486

zyxwvu
Napisane: 20.06.2002, 18:16:43





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Mam pytanko odnośnie wskaźników:
czy jeśli funkcja przeniesie instruckją "Global" zmienną wskaźnikową do przestrzeni nazw funkcji, to czy wskazywana przez nią zmienna też zostanie przeniesiona? Bo taki głupi problem, a nieźle wstrzymuje prace nad moim forum dyskusyjnym.
  Forum: PHP · Podgląd postu: #4259 · Odpowiedzi: 6 · Wyświetleń: 1 486

zyxwvu
Napisane: 20.06.2002, 18:27:35





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

No no no - tylko pogratulować statystyk. Teraz tylko uruchomić serwis php.pl (czemu wy tak często go zmieniacie? Ledwie wersja 5 ruszyła, a tu już 6 w budowie) i patrzeć smile.gif.
  Forum: Hydepark · Podgląd postu: #4261 · Odpowiedzi: 6 · Wyświetleń: 1 794

zyxwvu
Napisane: 20.06.2002, 18:07:07





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Toto można prostym warunkiem IF sprawdzić:
  1. <?php
  2. if($HTTP_POST_VARS['nazwa_pola'] ==&#092;"\"){
  3. echo &#092;"Pole nie wypełnione\";
  4. }else{
  5. echo &#092;"Pole wypełnione poprawnie\";
  6. }
  7. ?>


Dodatkowo możesz zastosować wyrażenia regularne do sprawdzenia poprawności wprowadzonych danych.
  Forum: Przedszkole · Podgląd postu: #4256 · Odpowiedzi: 6 · Wyświetleń: 1 766

zyxwvu
Napisane: 20.06.2002, 17:59:51





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Offline:
Database host: "localhost"
Database user: "root"
Database password: ""
Database prefix - to jest prefiks wszystkich tabel w bazie danych. Np. jeśli wpiszesz tu "forum", to nazwy wszystkich tabel będą zaczynać sie od forum_ (np."forum_nazwa_tabeli").
Online:
Jeśli serwer obsługuje bazy danych MySQL, to powinny być na stronie informacje. Jeśli stawiasz na prywatnym servku, popytaj admina. On powinien podać Ci całą konfigurację.
  Forum: Gotowe rozwiązania · Podgląd postu: #4255 · Odpowiedzi: 3 · Wyświetleń: 1 612

zyxwvu
Napisane: 20.06.2002, 18:09:09





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Nic - to nie zależy od php. Ew. możesz w linkach posuwać parametr target="_blank", lub przynajmniej podać dokładniejsze informacje, bo przyczyn mogą być setki.
  Forum: PHP · Podgląd postu: #4257 · Odpowiedzi: 1 · Wyświetleń: 989

zyxwvu
Napisane: 20.06.2002, 15:49:05





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Np. poprzez parametr: skrypt.php?zmienna_z_formularza=wartosc
  Forum: PHP · Podgląd postu: #4244 · Odpowiedzi: 3 · Wyświetleń: 1 311

zyxwvu
Napisane: 20.06.2002, 16:28:38





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

To z łaski swojej daj mu spokój, bo on oczekuje KONKRETNEJ odpowiedzi od KONKRETNYCH ludzi. A jak chciałeś powiedzieć, że nie lubisz Ich Troje, to idź do HydeParku. Dla informacji: ja próbiowałem mu pomóc przez GG i nic nie zdziałałem.
  Forum: Gotowe rozwiązania · Podgląd postu: #4247 · Odpowiedzi: 7 · Wyświetleń: 2 845

zyxwvu
Napisane: 20.06.2002, 15:27:02





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Oto masz gotowy [napisany przeze mnie] skrypt, który służy do tego celu. Zapewniam, że ZAWSZE działa, przy czym, jak linków jest za dużo, wyświetla tylko końcowy, początkowy, oraz linki wokół tego, który jest aktualnie wyświetlany.

Kod
function x($link, $num, $page){

  if(strpos($link, "?") == 0){

    return " <a href="".$link."?from=".$num."">".$page."</a> ";

  }else{

    return " <a href="".$link."&from=".$num."">".$page."</a> ";

  }

}



function GetPagesCount($options, $per_page){

  $mod = $options % $per_page;

  $a   = $options - $mod;



  $b   = $a / $per_page;



  if($mod > 0){

    $c = 1;

  }else{

    $c = 0;

  }



  return $b + $c;

}



function StartLastPage($options, $per_page){

  $mod = $options % $per_page;

  $a   = $options - $mod;



  $b   = $a / $per_page;



  if($mod > 0){

    return $a + 1;

  }else{

    return $a - ($per_page-1);

  }

}



function MakePages($options, $per_page, $active, $link){



  $mod = $options % $per_page;

  $a   = $options - $mod;

  

  $b   = $a / $per_page;

  



  if($mod > 0){

    $c = 1;

  }else{

    $c = 0;

  }

  

  $rt[0]  = $b + $c;

  

  if($b+$c > 5){

    $b = $b-1;

    $links = x($link, 1, 1);

    if($active > 3){

      $links .= "... ";

      $links .= x($link, $per_page*($active-1), $active-1);

      $links .= x($link, $per_page*$active, $active);

      if($active < $b + $c){

        $links .= x($link, $per_page*(1+$active), $active+1);

      }

    }else{

      $links .= x($link, $per_page, 2);

      $links .= x($link, $per_page*2, 3);

      $links .= x($link, $per_page*3, 4);

    }

    if($active < $b + $c-1){

      $links .= "... ";

      $links .= x($link, $per_page * ($b + $c), $b + $c);

    }

  }else{

    for($i = 1; $i <= $b+$c; $i++){

      $link_num = $per_page*($i-1);

      if($i == 1){

        $link_num++;

      }else{

        $link_num++;

      }

      $links .= x($link, $link_num, $i);

    }

  }

  

  $rt[1] = $links;

  return $rt;

}


Funkcja X jest wewnętrzną funkcją, lecz umieściłem ją na zewnątrz, bo w przeciwnym wypadku, gdy 2 razy wywołałeś tę funkcję, to wywalało błąd.

Pozostałe funkcje:
GetPagesCount - wylicza, ile jest stron wyników. Jako pierwszy parametr podajesz ilość wyników, a jako drugi ilość wyników na stronę.
StartLastPage - Podaje numer pierwszego wyniku na ostatniej stronie. Parametry te same.
MakePages - Przygotowuje listę stron wyników. Jako parametry pobiera kolejno: options - Ilość wyników; per_page - ilość wyników na stronę; active - nie pamiętam dokładnie, ale najprawdopodobniej oznacza to aktualna stronę. Jeśli nie, to pierwszy wynik na danej stronie; link - Wygląd linka, do którego ma prowadzić każda strona. Jeśli np podamy "index.php?action=show", to zostanie do niego dołączony parametr from=numer_pozycji_od_ktorego_ma_zaczac_wyswietlac_aktualna_strone.
I jeszcze: jak określić, od którego wyniku do którego ma wyświetlać wyniki (to wstawiamy do skryptu, który ma wyświetlić wyniki):
Kod
    $cnt = count($tablica_wynikow);

    $buf = $cnt;

    

    if(!isset($from)){

      $from = 1;

    }

    

    if($cnt > $tpp){

      $limit = $cnt - $from;

      if($limit > $tpp){

        $limit = $tpp;

      }elseif($limit < $tpp){

         $limit++;

      }

    }else{

      $limit = $cnt;

    }

  /* A potem wywołanie pętli FOR wyświetlającej wyniki, jeśli pierwszy element tabeli wyników ma indeks 1: */

    if($cnt > 0){

      // Gdy są jakieś wyniki

      for($i = $from; $i <= $from+$limit-1; $i++){

   // Kod wyświetlający wyniki

     }

   }else{

  // Gdy nie ma wyników

   }

  

Mam nadzieję, że to powinno pomóc.
  Forum: PHP · Podgląd postu: #4237 · Odpowiedzi: 5 · Wyświetleń: 1 690

zyxwvu
Napisane: 19.06.2002, 20:27:09





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Ekhm..... to znaczy... eeeee... no więc.... można jaśniej? Bo prawdę mówiąc, NIC z tego nie zrozumiałem. Co to jest to X i Y? Co dokładnie oznacza zdanie "Czy kazdy link do funkcji include ma byc przekazywany przez ta sama zmienna?"? Chodzi ci o link w tej postaci: "include("strona.htm");", czy o jakiś inny? Itp. itd smile.gif.
  Forum: PHP · Podgląd postu: #4148 · Odpowiedzi: 7 · Wyświetleń: 1 491

zyxwvu
Napisane: 20.06.2002, 15:09:27





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Do licha, nie kłóćta się. Wściekacie się z tak błachych powodów, a ja mam przerąbane, bo jakiś hacker przejął moje konto pocztowe, www , alias, a na koncie władował index.htm z moimi dokładnymi namiarami (łącznie z IP i telefonem smile.gif). Teoretycznie powinienem być tak wkurzony, że nie wiem, a od miesiąca nie miałem tak dobrego humoru biggrin.gif.
  Forum: PHP · Podgląd postu: #4232 · Odpowiedzi: 22 · Wyświetleń: 3 493

zyxwvu
Napisane: 19.06.2002, 20:15:41





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Oto funkcja php tworząca tabelę napisana przeze mnie smile.gif (Uwaga - mogą być jakieś "Parse error", bo przekonwertowałem to z mego sterownika MySQL smile.gif):
Kod
function mysql_create_table($table,$fields){

   $columns = count($fields);         # Ile jest kolumn do dodania

   $newtable = 0;

   if($fields[$columns][1]=="primary key"){

     $query = "CREATE TABLE $table (".$fields[1][1]." ".$fields[1][2]." ".$fields[1][3].",

                                  ".$fields[$columns][1]." (".$fields[$columns][2]."))";

     $dec = 1;

   }else{

     $query = "CREATE TABLE $table (".$fields[1][1]." ".$fields[1][2]." ".$fields[1][3].")";

     $dec = 0;

   }

   if(mysql_query($query)){

     $newtable = 1;

     $howmany++;

   }

   for($counter=2; $counter <=$columns-$dec; $counter++){

     if($fields[$counter][1]!="primary key" && $fields[$counter][1]!="key"){

       $query = "ALTER TABLE $table ADD ".$fields[$counter][1]." ".$fields[$counter][2];

       if($fields[$counter][3]!=""){

         $query .= " ".$fields[$counter][3];

       }

       $query .= " AFTER ".$fields[$counter-1][1];

     }

     if($fields[$counter][1]=="primary key" || $fields[$counter][1]=="key"){

       if(!$newtable){

         $query = "ALTER TABLE $table DROP INDEX ".$fields[$counter][1]."  ADD ".$fields[$counter][1]." (".$fields[$counter][2].")";

       }else{

         $query = "ALTER TABLE $table ADD ".$fields[$counter][1]." (".$fields[$counter][2].")";

       }

     }

     if(mysql_query($query)){

       $howmany++;

     }else{

       die("MySQL error: error in adding column $fields[$counter][1] to table $table.");

     }

   }

   return $howmany;

}

Funkcja zwraca ilość zainstalowanych poprawnie kolumn, a jako parametry przyjmuje kolejno: nazwę tworzonej tabeli, oraz tabelę pól. Przykładowa wygląda następująco:
Kod
$tabela = array(1=> array(1=>"id", "int(10)", "NOT NULL auto_increment"),

                    array(1=>"pole_textowe", "varchar(128)", ""),

                    array(1=>"blobek", "blob", "not null"),

                    array(1=>"primary key", "id"));

Tak więc tworzymy dwuwymiarową tabelę, przy czym każdy kolejny PIERWSZY indeks oznacza kolejne pole tabeli, a drugi ineks kolejno:
komórka 1 - nazwa pola
komórka 2 - typ pola
komórka 3 - ewentualne dodatkowe opcje (np. auto_increment).
Jeśli komórka 1 ma wartość key, lub primary key, do drugiej komórki wstawiamy nazw pola, któego się to tyczy, a trzecią zostawiamy w spokoju.

Mam nadzieję, że to rozwiąże twój problem, Palli smile.gif.
  Forum: PHP · Podgląd postu: #4147 · Odpowiedzi: 22 · Wyświetleń: 3 493

zyxwvu
Napisane: 20.06.2002, 15:40:30





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

> jak mi zaplacisz to zamieszcze .. za darmo mozna po ryju dostac.

Heh... tu widać, co się dzieje z dzisiejszym światem. "Płać, albo spadaj" - dewiza teraźniejszości. Jakbym ja pobierał opłaty za porady odnośnie php, to byłbym chyba milionerem ("udzielam się" smile.gif na wielu innych forach).

Ale wróćmy do temata. Bardzo dobry kurs konfiguracji Apache'a jest na stronie www.binboy.org w dziale "Artykuły".
  Forum: Gotowe rozwiązania · Podgląd postu: #4242 · Odpowiedzi: 6 · Wyświetleń: 2 779

zyxwvu
Napisane: 18.06.2002, 20:07:39





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Ustaw sobie funkcją error_reporting(8); nie raportowanie tego typu błędów. Przydaje się, gdy nie masz dostępu do php.ini.
  Forum: PHP · Podgląd postu: #3958 · Odpowiedzi: 3 · Wyświetleń: 1 464

zyxwvu
Napisane: 19.06.2002, 16:35:09





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Tylko już po właściwym uploadzie. Właśnie się o tym przekonałem smile.gif.
  Forum: PHP · Podgląd postu: #4085 · Odpowiedzi: 3 · Wyświetleń: 1 433

zyxwvu
Napisane: 18.06.2002, 19:22:28





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Sprawdziłem problem na stronie oficjalnej php i chyba twój problem w tym, że zamiast "userfile" powinna być nazwa twego pola typu "file" w formularzu. Acha... powinieneś jeszcze zmienić wywołanie funkcji copy na następujące:
copy($HTTP_POST_FILES ['userfile'] ['tmp_name'], "/place/to/put/uploaded/file".$HTTP_POST_FILES['userfile']['name']);
  Forum: PHP · Podgląd postu: #3950 · Odpowiedzi: 3 · Wyświetleń: 1 433

zyxwvu
Napisane: 18.06.2002, 20:11:26





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Ewentualnie można zrobić tak, że po kliknięciu "Wybierz avatara", zmienia stronę w przeglądarce, potem, gdy wybierzesz, powraca z powrotem do formularza z już wybranym avatarem, lecz trzeba się zabezpieczyć przed skasowaniem wpisanych danych.
  Forum: PHP · Podgląd postu: #3959 · Odpowiedzi: 10 · Wyświetleń: 2 022

zyxwvu
Napisane: 18.06.2002, 19:25:52





Grupa: Zarejestrowani
Postów: 16
Dołączył: --
Skąd: 50° 30' N, 22° 7' E

Ostrzeżenie: (0%)
-----

Darmowe - host.sk, ale zaprzestali rejestracji. Jak chcesz, to niedługo zwolnię Ci konto, bo przenoszę stronę na inny serwer.
  Forum: Hydepark · Podgląd postu: #3951 · Odpowiedzi: 10 · Wyświetleń: 2 049


New Posts  Nowe odpowiedzi
No New Posts  Brak nowych odpowiedzi
Hot topic  Popularny temat (Nowe)
No new  Popularny temat (Brak nowych)
Poll  Sonda (Nowe)
No new votes  Sonda (Brak nowych)
Closed  Zamknięty temat
Moved  Przeniesiony temat
 

RSS Wersja Lo-Fi Aktualny czas: 6.05.2024 - 16:07