Hirdetés
- Hieronymus: Új biztosítási kártyát kap a nagymama
- eBay-es kütyük kis pénzért
- gban: Ingyen kellene, de tegnapra
- Elektromos rásegítésű kerékpárok
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Rák
- vrob: Az utolsó DOS játékok 1996 - 1997-ben, egy korszak lezárul
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
Új hozzászólás Aktív témák
-
SektorFlop
aktív tag
Sziasztok!
Egy alapvető dologgal kapcsolatban szeretnék tanácsokat kérni. Már elég régóta php-ok hobbi szinten, viszont világ életemben gondok voltak ezekkel az include és társaival. Megpróbálom pontosabban leírni, hogy mi is a gondom.
Lehet alapjában azzal van a gondom, hogy rosszul kezelem a php-ban az "objektum orientáltságot", ha szabad ilyet mondanom. PHP-nak ezen része nálam nagy űr és nem találtam rá bevett módszert, de rá is térek a lényegre. Szóval, van egy osztályom külön fájlban, majd ha ezt szeretném használni valahol más fájlokban, includolni kell, vagyis én úgy tudom
Viszont sokszor már kezdek belekavarodni ezekbe a kapcsolatokba és a kódom is dobálja miatta a hibákat.
Biztos van erre valami bevett módszer, csak én vagyok olyan béna hogy még nem találkoztam vele. Esetleg 1-2 tippet, ötletet tudnátok adni?
-
SektorFlop
aktív tag
válasz
fordfairlane #12467 üzenetére
Jah igen, próbálkozásaim következtében az véletlen úgy maradt a másolás pillanatában. Viszont meg van a hiba, egy másik osztályban zártam a kapcsolatot, az zavart bele. Esetleg azzal kapcsolatban, van valami javaslat hogy mikor érdemes zárni a kapcsolatot?
-
SektorFlop
aktív tag
válasz
fordfairlane #12465 üzenetére
bocsi
, valóban csinálhattam volna úgy is. Senkinek semmi ötlete hogy mi lehet a baj?
-
SektorFlop
aktív tag
válasz
fordfairlane #12462 üzenetére
igen, construct-orban lefut. de mondom ezen kívül még 3x használom a db osztályt gond nélkül.
-
SektorFlop
aktív tag
válasz
DeltaPower #12460 üzenetére
public function open_connection(){
$this->connect = mysql_connect(
$this->host, $this->username, $this->password);
if(!$this->connect)
die("Sikertelen kapcsolódás: ". mysql_error());
else{
$db_select = mysql_select_db($this->database, $this->connect);
if(!$db_select)
die("Sikertelen kapcsolódás: ". mysql_error());
else
$this->query("SET NAMES 'UTF8'");
}
}Alapvetően nem volt gond eddig a db osztállyal, csak ezt az egy sql parancsot nem akarja eddig futtatni. Nem lehet hogy az aposztrófok és társai bekavarnak?
-
SektorFlop
aktív tag
Ha valakinek van türelme a problémámmal foglalkozni segítsen. Már a múltkor is tanácsoltátok nekem, hogy ha már elkezdtem oop felé menni, hagyjam az sql-es hülyeségeket. Most már kezdem látni a hátrányait annak amit eddig csináltam.
Problémám a következő, próbálnék összehozni egy keresőt. Odáig stimmel a dolog, hogy szépen összeállítja az SQL parancsot, kiíratom, phpmyadmin-ban lefuttatva tökéletes. Viszont a Database osztályom, query metódusa nem akarja lefuttatni.
Kereső osztályom, lényegesebb metódusa:
public function selectSearch(){
$i = 0;
$query = "SELECT * FROM hirdetes WHERE ";
foreach ($this->terms as $each){
$i++;
if($i == 1)
$query .= "title LIKE '%".$each."%' OR
content LIKE '%".$each."%' OR
varos LIKE '%".$each."%'";
else
$query .= "OR title LIKE '%".$each."%' OR
content LIKE '%".$each."%' OR
varos LIKE '%".$each."%'";
}
//$sql = $this->db->escape_value($query);
$result = $this->db->query($sql);
if($this->db->num_rows($result) > 0){
while($row = $this->db->fetch_array($result)){
$this->tomb[] = '<h3><a href="allas.php?id='.$row['id'].'">'.
$row['title'].'</a></h3>
<small><b>'.$row['varos'].'</b>, '.
$this->mv->showMegyeName($row['megye']-1).'.
<b>Feladás dátuma:</b> '.$row['date'].' </small><hr>';
}
}
else{
$this->tomb [] = "Nincs találat!";
}
}Database osztályom query metódusom:
public function query($sql){
$this->last_query = $sql;
$result = mysql_query($sql, $this->connect);
$this->error_query($result);
return $result;
}a $result = mysql_query($sql, $this->connect); sorra írja ezt a hibát.
Warning: mysql_query(): 14 is not a valid MySQL-Link resource inHa valamit nagyon elrontottam vagy nagy hülyeséget csináltam nézzétek el, még kezdő próbálkozásaimat élem meg
-
SektorFlop
aktív tag
válasz
Peter Kiss #12438 üzenetére
jah igen amúgy, foreach után kapcsos kell nekem
ha nem mondod fel se tűnt volna
-
SektorFlop
aktív tag
egyébként lenen egy szintén ugyan ilyen problémám, elméletben ugyan az lenne annyi hogy ebbe nincs adatbázis. de ez se akar működni, itt is csak az utolsó elemet írja ki:S
public function validData(){
if(empty($this->title))
$this->errors[] = "Nem töltötte ki a cím mezőt";
if(empty($this->content))
$this->errors[] = "Nem töltötte ki a tartalom mezőt";
return count($this->errors)? 0 : 1;
}
public function showErrors(){
echo '<h3>Hiba</h3>';
foreach ($this->errors as $key=>$value);
echo $value. '<br>';
} -
SektorFlop
aktív tag
public function fetch_array($result_set){
return mysql_fetch_array($result_set);
}szóval semmi extra.
önmagában jó ha echo-om a tömbe helyezés helyet. mármint így értem:
$result = $this->db->query("SELECT * FROM table");
while ($row = $this->db->fetch_array($result)){
echo $row['title'].'<br>'. $row['content'].'<hr>';
}Igy kiírja az összes rekordot.
-
SektorFlop
aktív tag
ha megengedtek egy buta kérdést:
class ViewTeszt {
private $db;
private $tomb;
function __construct() {
$this->db = new Database();
$this->tomb = array();
$this->select();
}
public function select(){
$result = $this->db->query("SELECT * FROM table");
while ($row = $this->db->fetch_array($result)){
$this->tomb[] = $row['title'].'<br>'. $row['content'].'<hr>';
}
}
public function showResult(){
foreach ($this->tomb as $key=>$value);
echo $value. '<br>';
}
}A selet metótus miért nem tölti fel nekem a tömböt? Mert mikor a meghívom a showResult-ot csak az utolsó eredményt írja ki. Mit rontottam el?
-
SektorFlop
aktív tag
válasz
Sk8erPeter #12039 üzenetére
Igen, én is átírtam még akkor... célszerűbb úgy én is rájöttem menet közben. Visszatérve a DATE_FORMAT-ra nem volt rá szükség, mert igazából nem is fontos szempont hogy DATE vagy DATETIME típus legyen a dátum. Csak a dátum volt fontos számomra. De azért köszi mindenkinek!
-
SektorFlop
aktív tag
válasz
SektorFlop #12036 üzenetére
Már nem tudom módosítani. Közben meg van, rájöttem hogy az idő zavart be.
-
SektorFlop
aktív tag
Igazából nem tudom melyik topicban lenne a helye, mivel van benne php írom ide. megszeretném számolni hogy egy naphoz mennyi tartalom tartozik. Első nekifutásnak így próbálkoztam:
$count_news = mysql_query("SELECT date, count(date) FROM news GROUP BY date");
while($row_count = mysql_fetch_array($count_news)){
$content .= $row_count['date'].' - '.$row_count['count(date)'].'<br>';
}eredménynek viszont nem azt kapom amire számítottam:
2012-11-02 20:30:29 - 1db
2012-11-02 20:31:01 - 1db
2012-11-03 20:30:52 - 1db
2012-11-04 20:30:47 - 1dbLáthatjátok, hogy 2012-11-02-én van kettő tartalom is, de külön írja őket. azt szeretném valahogy egybe vonni.
-
SektorFlop
aktív tag
SQL feltöltésbe bezavarnak az aposztrófok, van rá valami függvény amivel ezt el lehet kerülni?
pl: I don't like. ez már bezavarna, és nem menne az sql parancs
-
SektorFlop
aktív tag
Valaki megtudná mondani, hogy mikor érdemes zárni az adatbázis kapcsolatot? Mikor lenne a gyorsabb a dolog és leghatékonyabb.
Eddig sose zártam, de feltűnt hogy egy összetettebb oldal már egy kicsi lassulást mutat, gondolom én hogy ez lehet ennek az oka. -
SektorFlop
aktív tag
válasz
Speeedfire #11180 üzenetére
okés, köszönöm
-
SektorFlop
aktív tag
Hali! Nem tudja valaki van mód lakcím szerinti helymeghatározásra? Adatbázison tárolt címeket szeretném meghatározni, megjeleníteni. Mondjunk egy példát, google térképen. Nem tudom hol lenne a helye ennek a hozzászólásnak, lehet nem pont a PHP-nál.
-
SektorFlop
aktív tag
válasz
Peter Kiss #11143 üzenetére
meta tagben, hogy tudom ki küldeni headerrel? megpróbálnám úgy.
CSorBA hozzászólásából vettem: header("Content-Type: text/html; charset='UTF-8'");
valami ilyesmi kellene nekem? és ezt mindegy hol helyezem el az oldalon?
-
SektorFlop
aktív tag
válasz
CSorBA #11140 üzenetére
Ha már akkor se ha URL-t másolok be... végig néztem ANSI, UTF-8, UTF-8 BOM nélkülibe eggyik se stímel... a meta elemeket nem jól jeleníti meg
javítom: ügyebár fb-n link beszúrásánál az oldal a title és a meta description elemeit jeleníti meg, nálam ezeket rossz kódolással.
-
SektorFlop
aktív tag
Segítsetek pls!
Készen vagyok az első "komolyabb" oldalammal. UTF8-BOM nélküli kódolást használtam miközbe írtam, viszont a hosztra való költözés után, problémák voltak a karakter kódolással, UTF8-ra van most állítva így tökéletes minden, de a tulaj kampány tervébe benne van hogy fb-n is hirdesse az oldalát. Csak hogy ott láthatóan nem klaffol az utf8-as kódolás. Kérdésem kérésem az lenne hogy mit tehetnék ez ellen? -
SektorFlop
aktív tag
válasz
SektorFlop #11125 üzenetére
tévedtem... csak ennyit ír: "/forum.php"
-
SektorFlop
aktív tag
válasz
SektorFlop #11120 üzenetére
nem tudom kiszedni valahogy a linkből csak ezt a részt?
"forum.php?topic=3"
vagy a kérdőjel utáni részt?
"topic=3" -
SektorFlop
aktív tag
ezt szúrtam ki magamnak:
$pageURL = (@$_SERVER["HTTPS"] == "on") ? "https://" : "http://";
if ($_SERVER["SERVER_PORT"] != "80")
{
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
}
else
{
$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}csak ezzel egy probléma van pont a lényeges résznél két linket is tárol(az előző oldal, és az aktuális oldalt). Pl mint ez:
"http://valami.eu/forum.php?tema=1http://valami.eu/forum.php?topic=3"
-
SektorFlop
aktív tag
-
SektorFlop
aktív tag
érdekes hibába botlottam, dolgozom egy oldalon amin a belépés form-ot egy sablonon helyeztem el, és mindegyik oldalon ugyan az a form jelenik meg, viszont a közel 20 oldal egyikén nem akarom működni a belépés. Így látatlanba valakinek van valami ötlete vagy tippje hogy mi lehet ennek az oka?
-
SektorFlop
aktív tag
userek online - offline státuszát szeretném feltüntetni, ami működik is attól eltekintve ha egy felhasználó kijelentkezés nélkül bezárja a böngészőt akkor online marad a státusza. Hogy tudnám ezt a legkönnyebben kiküszöbölni? A státuszt 1-el vagy 2-el jelőlöm adatbázison.
-
SektorFlop
aktív tag
válasz
Peter Kiss #10998 üzenetére
és ha egy link alapján szeretnék törölni valamit? legalább egy id-t csak át kell adni a linkben nem?
-
SektorFlop
aktív tag
Sziasztok!
Tudnátok segíteni beléptető rendszerrel és session kezeléssel kapcsolatban? Úgy alapjában működik amit írtam, de lenne egy két problémám, például nem törtlődnek a session fájlok, vagy szeretnék beállítani idő korlátot, vagy ha valaki kijelentkezés nélkül zárja a böngészőt akkor is jelentkezzen ki az oldalról.jelenleg így néz ki a kilépésért felelős php-m:
<?php
require_once ('../config.php');
session_start();
$myusername = $_GET['username'];
mysql_query("UPDATE user SET status = 0 WHERE username='$myusername'");
session_destroy();
header("location:../index.php");
?>Lenne még egy kérdésem, szemet szúrt egy apró de problémás bug, ha egy felhasználó regisztrál pl Teszt néven, és egy másik regisztrál teszt néven(amit szeretnék kiküszöbölni hogy ne legyen lehetséges), a Teszt felhasználó be tud lépni a teszt jelszavával és ugyan úgy fordítva.
Belépésnél csak ennyit ellenörzök:
$sql="SELECT * FROM `user` WHERE username='$myusername' and password='$mypassword'"; .
a $myusername meg egyezik a formba beírt felhasználónévvel, a jelszó pedig egy $mypassword pedig egy formból átadott kódolt jelszót tartalmaz. És ellenörzöm, mysql_num_rows()-al hogy 1-et add e vissza.
Regisztrációnál pedig csak lekérem hogy van e olyan felhasználó név amit át adott a form.
SELECT * FROM `user` WHERE username='$username'Ezeket a dolgokat nem lehetne kiegészíteni olyannal, hogy nézzek a kis és nagy betűket?
-
SektorFlop
aktív tag
Van arra valamilyen megoldás, hogy ha text mezőbe elkezdek gépelni valamit akkor mint ha egy select mező lenne, elkezdenének megjelenni a felhasználónevek a beírt karaktereknek megfelelően. És akár ki is lehetne választani. Lehet nem jó a topic, mert nyilván lesz már benne egy kis js-is.
-
SektorFlop
aktív tag
válasz
Tele von Zsinór #10920 üzenetére
Még1x köszönöm, most már tesztelve és tökéletes a megoldás. Mindig a legegyszerűbb megoldás nem jut az eszembe.
-
SektorFlop
aktív tag
válasz
Tele von Zsinór #10920 üzenetére
Ahha, köszi ez tökéletesnek tűnik.
-
SektorFlop
aktív tag
valaki segít gondolkodni? én már belegabalyodtam
mai projektem egy egyszerű belső üzenetküldő, felhasználó felhasználónak. Minden tökéletesen működik, eltekintve a törléstől... Azt szeretném megoldani hogy ha az egyik felhasználó törli akkor attól még a másiknak meglegyen. Első nekifutásra próbálkoztam olyannal hogy törlöm pl a cimzett nevét és úgy már nem kerül a fogadó üzenetei közé, de így hiányosak lesznek a levél adatai.
Második nekifutásnak próbálkoztam egy számos rendszerrel, felvettem egy új rekordot a táblába, amibe három szám változhat:
1 - mind2 felhasználó láhtja
2 - csak a feladó látja
3 - csak a címzett látjaSajnos ez a megoldás is félbemaradt, ez sem tökéletes, mert nem tudom hogy kellene eldönteni hogy mikor törölhető az üzenet végleg az adatbázisból.
Van valakinek ötlete vagy valaki tud erre működő megoldást?
-
SektorFlop
aktív tag
válasz
Peter Kiss #10865 üzenetére
Hát elég csúnyán néz így ki, de a PHP tudtommal nem érzékeny a változókra annyira, mint más nyelvek.
-
SektorFlop
aktív tag
válasz
Peter Kiss #10861 üzenetére
hát egy nagyon egyszerű példa, ha erre vagy kíváncsi:
sablon.php:
<html>
<body>
<?php echo $tartalom; ?>
</body>
</html>index.php:
$tartalom = "Az index tartalma";
include 'sablon.php';szóval szerintem így nem lógnak a levegőbe a változók, vagyis nem is igaz értem hogy mire gondoltál igazából.
-
SektorFlop
aktív tag
én megoldásom erre a célre az szokot lenni, hogy csinálok egy úgynevezett sablon.php-t. Ez a fálj tartalmaza a html fő részeit, az oldal szerkezetét, és az állandó php elemeket. és különféle változókat íratok ki div-enkét amiknek az aktuális oldalon adok értéket, és ezek után már csak be includ-olom a sablon fájlomat. Ezek után ha a szerkezetbe építed az admin részét, még akkor is teljesen átlátható az egész.
Már korában is kérdezni akartam, mivel kevés tapasztalattal rendelkezem, és nem tudom a komolyabb helyeken hogy működnek ezek a dolgok? Pl. ez a megoldás mennyire elfogadott? Vannak-e hátrányai? Lenne egy pár szakmai kérdésem igazából, ha már egyszer eljutok egy olyan szintre és elhelyezkednék ezzel a dologgal, mire számítsak? Miket kellene igazán tudnom? Szóval szívesen elbeszélgetnék ezekről valakivel, akinek már nagyobb tapasztalata van ebbe, sajnos suliba ilyenket nem mondtak el az embernek
-
SektorFlop
aktív tag
válasz
Sk8erPeter #10828 üzenetére
jah igen bocsánat, van különbség
rosszul emlékeztem
-
SektorFlop
aktív tag
válasz
Forza_JUVE #10826 üzenetére
mysql_query("SET NAMES 'UTF8'"); nálam megoldotta a problémát mindig, mikor configolod az adatbázis kapcsolatot tedd hozzá ezt is, még amit szoktam ilyenkor csinálni hogy Notepad++-ban átálítom a fálj kódolását UFT8 DOM nélkülire, őszinte leszek nem tudom hogy ezek pontosan mire valóak, de eddig beváltak.
-
SektorFlop
aktív tag
válasz
Forza_JUVE #10817 üzenetére
Lehet butaságot mondok, de ha tárhelyen vagy akkor általában valamiféle IP címet szoktak adni elérési útnak, pl. 10.0.0.3, vagy asszem az ingyenes atw-nél 127.0.0.1., de ez természetesen mindenhol más és más lehet. Localhost-ot helyi hálózat esetén szoktuk használni, Pl USBWebserver esetén ez a pontos adat: localhost, root, usbw.
-
SektorFlop
aktív tag
válasz
Peter Kiss #10809 üzenetére
azt hiszem elnézést kell kérnem, másodszorra átolvasva már értem a hivatkozásod lényegét.
-
SektorFlop
aktív tag
válasz
Peter Kiss #10809 üzenetére
Az isset-el tökéletesen működik, én úgy tudom hogy az isset azt vizsgálja hogy létezik-e ez a paraméter(akár üres akár nem), és amiről te beszélsz az szerintem az empty, vizsgálja hogy van e value értéke a paraméternek... bár én csak egy kezdő vagyok nem tudhatom.
Sk8erPeter: a $menu csak egy id-t tárolt. elképzelésem sincs, hogy mi lehetett a baj
-
SektorFlop
aktív tag
válasz
SektorFlop #10806 üzenetére
most már működik. de őszinte leszek, nem tudom hogy mi volt a baj, már egy kicsit ingerült vagyok és írtam át az egész oldalt, de a lényeg hogy most már jó.
-
SektorFlop
aktív tag
válasz
Sk8erPeter #10805 üzenetére
közbe én is észrevettem az aposztrófot, de nem azzal van a baj, más paramétert is hozzáfűztem. nem okoz problémát, de ez a menu=$menu bezavar... ráadásul át is neveztem ezt a paramétert és változót, de úgy se jó... biztos vagyok benne hogy valami olyasmi lehet ami kiszúrja a szemem.
-
SektorFlop
aktív tag
sziasztok!
valaki segítsen ha tud mert én már a hajamat tépem lassan... admin felületet csinálok, már a sokadik ugyan ilyen fájlt írom, de ez nem akarja az igazat...lényeg az lenne hogy alapesetbe ha megnyitjuk a fájlt akkor kihozza az oldal tartalmát, de elhelyeztem egy módosításra mutató linket, ami szintin ugyan arra az oldalra mutat csak tartalmaz 2 paramétert, vagyis tartalmazna...
egyikkel megadom hogy a szerkesztés form jelenjen meg az oldalon, másikkal pedig egy adatott adok tovább form-nak.
problémám az hogy így nem működik a linkem:
<a href=page.php?menu=$menu&edit'>Módosítása</a>így pedig működik:
<a href=page.php?edit'>Módosítása</a>Az oldal újratöltésénél vizsgálom egy isset-el az edit paraméter létezését.:
if(isset($_GET['edit'])){
betöltendő tartalom...
}ui.: jah igen, a nem működik alatt azt értem hogy nem hozz be semmi... valamiért nem ad igazat a feltételnek szerintem.
Új hozzászólás Aktív témák
- ASUS ROG Strix GeForce RTX 4090 BTF 24GB GDDR6X Graphics Card
- Bomba ár! MacBook Pro M1 14" 2021 - M1 Pro I 16GB I 512GB SSD I OS X Sequoia I Cam I Gari!
- Lenovo ThinkPad L16 Gen 1 - 16" WUXGA IPS - Ultra 5 135U - 16GB - 512GB - Win11 - 2,5 év gari
- Apple iPhone 12 Pro Max 128GB, Akku: 84%, Normál, Kártyafüggetlen, Töltővel, 1 Év Garanciával!
- Bomba ár! MacBook Air M1 13" 2020 - M1 I 8GB I 256GB SSD I OS X Sequoia I Cam I Gari!
- Csere-Beszámítás! Manli RTX 3070Ti 8GB GDDR6X Videokártya!
- AKCIÓ! Apple Mac Studio M1 MAX 2022 32GB 512GB számítógép garanciával, hibátlan működéssel
- DDR3 BAZÁR! 8GB 16GB 1333MHz 1600MHz 2400MHz DDR3 memória garanciával hibátlan működéssel
- LG 40WP95XP-W - 40" NANO IPS - 5120x2160 5K - 72Hz 5ms - TB 4.0 - HDR - AMD FreeSync
- Csere-Beszámítás! MSI Katana GF66 Gamer laptop! I7 12700H / RTX 3070 / 16GB DDR4 / 500GB SSD
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest