ugrás a tartalomhoz

Archívum - 2014 - Fórum téma

Mennyire legyen általános az általános?

inf · 2014. Feb. 1. (Szo), 03.34
Üdv.

Az utóbbi néhány évben szinte kizárólagosan abba a problémába futok bele, hogy valami config fájlból beállítható legyen-e, és általános kódot írjak hozzá, vagy konkrét kódot írjak, szóval hardcodoljam a rendszerbe. Ez a probléma nagyon megnehezíti pl az általános célú rendszerek írását, mert nem tudod eldönteni, hogy mi kerüljön bele a rendszeredbe, és mit bízz a fejlesztőre, aki használni fogja. Van ilyen téren bármi tapasztalatotok, tanácsotok?

Jelenleg egy REST API generátort írok, ami egy alkalmazás leíró fájlból dolgozik, és képtelen vagyok eldönteni, hogy mennyire mélyen menjek bele a dolgokba. Nekem annyi a tapasztalatom az ilyen jellegű problémákkal, hogy sokszor konkrét feladat függvénye hogy mi kerüljön az adatbázisba/config-ba, és mi maradjon hardcodolva osztályokban vagy bootstrap fájlban. Az általános alkalmazásoknál pont az a probléma, hogy nincs konkrét feladat, hanem az van, hogy alkoss valamit a témában, ami jól használható. Két stratégiám van az ilyen jellegű feladatok megoldására. Az egyik, hogy egy vagy több konkrét példa refaktorálásával alkotom meg az általános oszályokat, a példák megoldása során pedig látom, hogy mi az, amire ténylegesen szükség van, és mi az amire nem. A másik megoldás, hogy kitalálok egy nekem tetsző application interface-t, aztán TDD-vel implementálom azt. Ennél a projektnél eddig mindkét stratégia csődöt mondott, nem adja meg magát a rohadék... :D
 

január 31

Caldav, Cardav szerver megvalósítása PHP-ban

voidnull · 2014. Jan. 31. (P), 21.48
Sziasztok, egy egyszerű (nem szabványkövető) Caldav, Cardav implementálásra lenne szükségem PHP-ben, ami nem támaszkodik semmiféle összetett könyvtárra csak egyszerű PHP. Tulajdonképpen elég lenne IOS és OSX kliensekkel való kompatibilitás.

Amit találtam eddig a neten az vagy nagyon összetett volt (próbált megfelelni az egész Webdavos szabványnak), vagy leálltak a fejlesztésével.

Tud valaki valami működő képes megoldást? Vagy ha valakinek van saját megvalósítása akkor egyeztessünk.
 

Egyszerű képnézegető + érték a képeknek

Dfoglalo · 2014. Jan. 31. (P), 20.02
Sziasztok!

A következő dolgot szeretném megvalósítani:

Van egy űrlap, melyen van egy kép, mely alatt van szimplán két gomb, amelyeket nyomogatva a kép átvált, és egy másik kerül a helyére, tehát több kép között váltogathatunk. Ezt sem valósítottam még még meg, igazából semmit sem, most öltöttem ki csak, hogy mit is szeretnék elérni. Innentől jön a php része; ugyanis minden képhez szeretnék egy értéket rendelni, és amelyik kép éppen látszódik, azzal dolgozni.

Példákkal személtetve a dolgot:

Az oldalt megnyitva van egy kép, amelyen van egy autó, alatta a két gombbal. Ha nem váltunk át semmire sem, és elküldjük az űrlapot, akkor az autós képhez társított értékkel dolgozhatunk tovább, pl. az 1-es értékkel. Viszont ha megyünk a gombokkal pl. jobbra 2-t, megjelenik egy kép a házról, és akkor már a 3-as ID-vel dolgozhatunk tovább.

Nem tudom, érthető e a dolog. Ha nem, akkor szóljatok, és megpróbálom részletezni a dolgot. A szükséges képnézegetős dologból még semmi nem készült el, tehát nincs alap kódom a szükséges képes cucchoz, amivel kísérletezgettem volna. Viszont az űrlap készen van, meg működik, feltölti az adatbázist úgy, ahogy kell, stb., de az nem tartozik a dologhoz, és nem is szükséges hozzá (meg másra sem), így azt nem másolom be.

Köszönettel,
Dfoglalo
 

Közösségi oldalak like,share trackelése saját adatbázisba

voidnull · 2014. Jan. 31. (P), 17.03
Sziasztok

Egy CMS rendszerben szeretném kimutathatóvá tenni (táblázatosan, grafikonosan) a közösségi oldalak Facebook, Twitter, Pinterest stb. like-jait, megosztásait legalább napi bontásban . Egy-egy oldalnál egyszerűen le tudom kérni az adott állapotot. Ütemezetten valószínűleg nem szerencsés naponta lekérni egy több ezer oldalból álló weboldal minden lapjára ezeket a számokat.

A kérdésem az lenne, csinált-e már valaki hasonlót, illetve tudtok-e esetleg valami részben kész megoldást erre?
 

MySql kiíratás

GalateHD · 2014. Jan. 31. (P), 10.51
Sziasztok.
Olyan dolgot szeretnék csinálni, hogy ha belép egy játékos kiírja neki, hogy mennyi kreditje és pontja van. Az UCPuserek -ben tárolt Kredit és Rangot kéne kiíratni (addig azt megoldottam, hogy mindenkinek ki tudom íratni az adatait, de nekem csak az kell, hogy aki belép annak kiírja, hogy mennyi kreditje stb van). Nem vagyok még valami jártas a PHP -ban, ezért kérnék segítséget. Előre is köszönöm.
			<?php
					
				}
				else
				{
					echo"
					<b><font color=yellow size=3>Üdvözöllek, $fsor[Felhasznalonev]!</font><br><br><hr><br>
					$kinfo</font>
					Jelenleg: <font color=yellow>$rang</font> kredited van! Vásárlásához kattints <a href='index.php?tamogatas'><font color='red'><b>IDE</b></font></a> <br>
					Jelenleg rangod: <font color=yellow>$kredit</font>! <br>
					Rangod időtartama: <font color=yellow>xy nap</font>!
					<br><br>
					<div class='subnav_gomb_leader' onclick='window.location.href=\"index.php?menu=muveletek&jelszovalt\";'>Jelszóváltás</div><br>
					<div class='subnav_gomb_leader' onclick='window.location.href=\"index.php?kijelentkezes\";'>Kijelentkezés</div></b>";
				}
			?>
 

Gyorsabb lekérdezés

mahoo · 2014. Jan. 31. (P), 09.10
Sziasztok, az lenne a kérdésem, hogy mi az optimális lekérdezés az alábbi adatok alapján. Azokra az epületekre lenne szükségem, ahol egy adott időintervallumban (:start, :stop) nincs tanítási óra. Köszönöm!
iskola: idiskola
terem:  idterem, idepulet
tanora: idterem, start, stop
Ez van jelenleg:
SELECT idiskola FROM iskola WHERE idiskola NOT IN (
	SELECT idiskola FROM iskola INNER JOIN terem USING (idiskola) INNER JOIN ora USING (idterem)
		WHERE :start BETWEEN start AND stop OR :stop BETWEEN start AND stop OR :start < start AND stop > :stop)
 

január 31

Kereső, frissítés után eltűnik az adat

handycam14 · 2014. Jan. 30. (Cs), 23.49
Sziasztok!
Az lenne a problémám, hogy akarok keresni select mezővel, egy adott tulajdunságú elemekre. Ezt szépen lekérdezi, és megjeleníti, csak ha ráfrissítek az oldalra akkor eltűnik. Probalgattam session-el eltarolni , de az se ment.
Form:

<form method="post" action="">
    <select name="akcio">
     <option value="1">Akció</option>
     <option value="0" >Nem akciós</option>
     <option value="%" selected="selected">Mindekttő</option>
    </select>
    <br />
    <input type="submit" name="send" value="Keres" />
   </form>
PHP kód:

if(isset($_POST["send"]) || isset($_SESSION["akc"])) {		
					session_start();  
					if(!empty($_POST["akcio"])) {
					        $_SESSION["akc"]=$_POST["akcio"];
					   }
					 if(isset($_SESSION["akc"])) {
			    $query = "select id,name,brand,sale,price,image from product WHERE sale LIKE '$_SESSION[akc]'";  
Tudom, nincs rajta biztonsag, de most csak gyakoroltam. Köszi előre is!
+
Frissítés után a kiválasztott option is eltűnik, vagyis pl: ha kiválasztom az "Akció" option-t, és rányomok a submit-ra, akkor szépen kilistázza az akciós terméket, de visszaugrik a "Mindkettőre". Azt hogy lehetne hogy az is látszodjon amit kiválasztok?
 

PHP Login hiba

GalateHD · 2014. Jan. 30. (Cs), 14.23
Sziasztok, van egy PHP login scriptem, ami eddig hibátlanul ment.
Most mást nem megy.
<?php session_start(); include("db.class.php"); $adatbazis = new DB();?>
<?
if($_SESSION["username"]){
?>
<center>
<?php
$usr = $_SESSION["username"];
$result = $adatbazis->query("SELECT * FROM accounts where username='$usr'");
while ($row = $adatbazis->fetchNextObject($result))
{
?>
<br>
<b>Üdvözöllek, <b><? echo $_SESSION["username"];?>!
<hr>

</center>



<?}else{
session_start();
if($_POST["belepes"]){
$felhasznalonev = $_POST['username'];
$jelszo = md5($_POST['password']);
if ($felhasznalonev&&$jelszo) {
mysql_connect("...","...","...");//ezeket majd írd át 
mysql_select_db("..."); 
$query = mysql_query("SELECT * FROM accounts WHERE username='$felhasznalonev'");
$numrows = mysql_num_rows($query);
if ($numrows!=0) {
while ($row = mysql_fetch_assoc($query)) {
$dbfelhasznalonev = $row['username'];
$dbjelszo = $row['password'];
}	
if ($felhasznalonev==$dbfelhasznalonev&&$jelszo==$dbjelszo){
header("Location: index.php");
$_SESSION['username'] = $felhasznalonev;
} else {
$hiba2 = 'Hibás jelszó!';
}
} else {
$hiba2 = 'Nincs Ilyen felhasználónév!';
}
} else {
$hiba2 = 'Minden mező kitöltése kötelező!';
}

}
if(isset($hiba2)){
echo '<small class="error">'.$hiba2.'</small>';
}

?>
<form method="post"  name="belepes">
<p><b>Felhasznónév:</b><br/>
<input type="text" name="username"   class="username text" /><p>
<b>Jelszó:</b><br/>
<input type="password" name="password"   class="password text" /></p>
<input name="belepes" type="submit" class="small button" value="Bejelentkezés"  />
</form>
<?}?>
62 sorban van a hiba(??)
Aki tudna nekem segíteni, megköszönném!
 

január 29

Form új sor beszúrása!

cszlak · 2014. Jan. 29. (Sze), 21.58
Sziasztok.

Az lenne a problémám, hogy egy ártábla formot csináltam, sikerült gomb nyomársa új sort beszúrnom, de nem tudom hogy kellene neki megadni a name="" értéket Javascripptel, hogy el tudjam menteni php-val adatbázisba.

Kód:
[colorer=html]
<html>
<head>
<?php
if(isset($_POST)){
echo '<p style="font-size:16px; color:#000;">'; print_r($_POST); echo "</p>

ASP.NET alapon COMET technológia

vary88 · 2014. Jan. 29. (Sze), 19.31
Sziasztok, lenne egy elég hardcore kérdésem.

ASP.NET alapon lenne szükség a következő probléma megoldására.

A célfügvény az lenne, mint amit a facebook-nál már megszokhattunk, hogy értesítést kapunk azonnal ha üzenet jött.
Ehhez a szerver oldal felől kell adatot pusholnunk a kliensoldal felé (ami a szó szoros értelmében lehetetlen, azonban van erre technika)

Ez a gyakorlatban egy bizonyos Comet technológiával működik, aminek a működési alapelve, hogy a kliensoldal küld a szerveroldalnak egy úgynevezett "Longed live Request"-et, amiben nem kapja meg azonnal a választ, hanem mint a
neve is sugallja, nyitva marad a kérés (persze nem végtelenségig, de ha time out-ot kap, akkor max küld egy újat).
A dologra többféle megoldás is létezik, nekem a legszimpatikusabb a long polling.
Kliensoldalon ez a következőképpen néz ki:

function long_polling() {
$.getJSON('/Test.aspx', function (events) {
processEvents(events);
long_polling();
});
}
long_polling();

Na most a kérdés az, hogy szerver oldalon nekem mi a teendő? Csak nem tehetem végtelen ciklusba a szerveroldalt (még ha egy webservice-ről is lenne szó) amíg nem érkezik új üzenetem, nemigaz? Vagy ez járható úgy?