Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pierwsza moja klasa..czy to tak?
quetra
post
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 19.02.2004
Skąd: zalibórz

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


Hmmm no dobra - to moja pierwsza klasa. Pytam sie czy tak to sie wlasnie robi, na przykladzie klasy ktora obsluguje baze danych. Sam skrypt dziala bez problemu, ale moze sa jakies bardziej funkcjonalne rozwiazania na napisanie go.

[php:1:f01808fa7f]<?
class Db {
var $DBHost,$DBUser,$DBPass,$DBN,$Query;
function DBConnect() {
$connect=mysql_connect($this->DBHost,$this->DBUser,$this->DBPass)or die('Connection Error: '.mysql_error());
$baza=mysql_select_db($this->DBName)or die('DataBase Error: '.mysql_error());
return $connect;
}
function DBNumRows() {
$zap=mysql_query($this->Query,$this->DBConnect())or die('Query Error: '.mysql_error());
return mysql_num_rows($zap);
}
}

$Enew= new Db;
$Enew->DBHost='localhost';
$Enew->DBUser='root';
$Enew->DBpass='';
$Enew->DBName='mysql';
$Enew->Query='SELECT * FROM Db';
// i jako przykladowe wywolanie wyniku
echo "Ilosc wierszy: ".$Enew->DBNumRows();
?>
[/php:1:f01808fa7f]

Czy sa jakies inne sposoby deklarowania zmiennych dla danej kopii obiektu, czy zawsze trzeba z tymi $Enew->DBHost='costam';
i tak dalej....

Pozdrawiam mastahów (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
quetra
post
Post #2





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 19.02.2004
Skąd: zalibórz

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


Nno ulepszylem moje pierwsze cudo o cos takiego (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) czekam na oceny typu: tak wlasnie tak to sie robi lub a po co? nie mozna prosciej? (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

W kazdym razie spodobaly mi sie klasy. Ciezko sie projektuje ( jak na poczatku), ale potem super wygoda w pisaniu kodu.



[php:1:f0ec3dce0c]<?php

$dane=array('DBHost'=>'localhost','DBUser'=>'root','DBPass'=>'','DBName'=>'mysql','Query'=>'SELECT * FROM Db');

class Db {
var $DBHost,$DBUser,$DBPass,$DBN,$Query,$Data;

function DbCreator() {
foreach ($this->Data as $key=>$val) {
$this->$key=$val;
}
}
function DBConnect() {
$connect=mysql_connect($this->DBHost,$this->DBUser,$this->DBPass)or die('Connection Error: '.mysql_error());
$baza=mysql_select_db($this->DBName)or die('DataBase Error: '.mysql_error());
return $connect;
}
function DBNumRows() {
$zap=mysql_query($this->Query,$this->DBConnect())or die('Query Error: '.mysql_error());
return mysql_num_rows($zap);
}
}

$Enew=new Db;
$Enew->Data=$enew;
$Enew->DbCreator();
echo $Enew->DBNumRows();

?>[/php:1:f0ec3dce0c]

Nie sprawdzalem tego, ale teraz moge sopbie dopisac do tej klasy inne dowolne funkcje i potem je sobie wywoluje odwolujac sie do tego obiektu albo gdzie inndziej odwolujac sie do innego stworzonego obiektu i sie nie popieprzy tak?

Poczatki sa truuuudne (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

Pozdrawiam wszystkich pomocnych (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post

Posty w temacie
- quetra   Pierwsza moja klasa..czy to tak?   20.04.2004, 17:24:19
- - jaco   Re: Pierwsza moja klasa..czy to tak?   20.04.2004, 18:05:17
- - quetra   No wlasnie :D   20.04.2004, 18:52:05
- - jaco   A po co dwa razy zapisywac te same dane? Odrazu je...   20.04.2004, 19:33:16


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.12.2025 - 10:27