ugrás a tartalomhoz

Archívum - Ápr 29, 2006

Honnan hívtuk a függvényt?

Anonymous · 2006. Ápr. 29. (Szo), 12.39
Sziasztok!

Olyat szeretnék csinálni, hogy egy függvény másként viselkedjen attól függően, hogy honnan hívtam meg. Hogyan tudnám lekérdezni, hogy egy függvényt melyik másik függvényből hívtam? Esetleg azt, hogy melyik fájlból...

Ilyen van, vagy eleve rossz ha ilyesmin töröm a fejem?

Köszi!
 

HTML űrlap + a fájlfeltöltés problémái

a.d.a.m · 2006. Ápr. 29. (Szo), 11.13
Sziasztok!

Valamikor rég készült egy html űrlap, mivel azonban alkotója nem tulzottan értette a php, így megkért engem (vak vezet világtalant alapon), hogy ugyan készítsek már egy olyan php kódot ami feltölti az űrlapon keresztül a képet, ráadásul az űrlap adtait is elmenti egy fájlba. Ez megtörtént. Egy ideig nem is volt semmilyen gond, azonban az idő múlásával szaporodni kezdtek a jelen: hol a kép nem mentár, hol a szöveg fele hiányzott. Ezért többszörösen is átdolgozásra került az űrlap, míg végül elérte jelenlegi állapotát, ami mint egy kevéssé sem baráti e-mailból kiderült ismét nem tökéletes. Minthogy én nem vagyok túl nagy ÁSZ a PHP terén a segítségeteket szeretném kérni e probléma megoldásában.
Az oldal a www.orszagoslovasar.hu címen található, ezen belül a hirdetés feladás - eladó ló menüpont alatt.

Az oldal kódja a következő:
[colorer=php]<?php
session_start();
if ( $_POST['kuldes'] == "feltolt" )
{
unset($_SESSION['return']);
if (isset($_FILES["kep"]["tmp_name"]) == true)
{
if ($_FILES["kep"]["size"]>=3000001)
{
$_SESSION['return'] = "false";
echo "<script>window.alert('A kép feltöltése sikertelen! A feltöltött kép mérete nem megfelelő!');</script>";
}
else
{
move_uploaded_file($_FILES["kep"]["tmp_name"], "hirdetesek/".$_FILES["kep"]["name"]);
$_SESSION['return'] = $_FILES["kep"]["name"];
echo "<script>window.alert('A kép feltöltése sikeresen befejeződött!');</script>";
}
}
else
{
$_SESSION['return'] = "false";
echo "<script>window.alert('A kép feltöltése sikertelen');</script>";
}

$keys = array_keys($_POST);
$count = count($_POST);
for ( $array_index=0; $array_index<=($count-1); $array_index++ )
{
if ($keys[$array_index]!="MAX_FILE_SIZE" or $keys[$array_index]!="s")
{$_SESSION[$keys[$array_index]] = $_POST[$keys[$array_index]];}
else
{}
}

echo "<script>window.location.replace('felad-elado-felsz.php?s=".$_POST['s'].$link."');</script>";
}
?>
<html>

<head>
<title>Hirdet&eacute;s felad&aacute;s: elad&oacute; felszerel&eacute;s</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
<meta name="generator" content="Microsoft FrontPage 5.0">
<meta name="description" content="Lovat, felszerelést eladna, vagy venne? Adja fel hirdetését nálunk!">
<meta name="keywords" content="Lovas, lóvásár, eladó ló, apróhirdetés, lovassport ">
</head>

<script>
function feltolt()
{
document.adatok.kuldes.value="feltolt";
document.adatok.submit();
}
function elkuld()
{
document.adatok.kuldes.value="elkuld";
return formCheck(document.adatok);
}
function formCheck(formobj){
var fieldRequired = Array("megr_nev", "megr_cim", "penz", "fajta", "neme", "alkalmas", "elerhetoseg");
var fieldDescription = Array("Megrendelő neve", "Megrendelő címe", "Pénzfeladás módja", "Fajta", "Neme", "Mire vaLÓ", "Elérhetőség");
var alertMsg = "Kérem töltse ki az alábbi mező(ke)t:\n";

var l_Msg = alertMsg.length;

for (var i = 0; i < fieldRequired.length; i++){
var obj = formobj.elements[fieldRequired[i]];
if (obj){
switch(obj.type){
case "select-one":
if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].text == ""){
alertMsg += " - " + fieldDescription[i] + "\n";
}
break;
case "select-multiple":
if (obj.selectedIndex == -1){
alertMsg += " - " + fieldDescription[i] + "\n";
}
break;
case "text":
case "textarea":
if (obj.value == "" || obj.value == null){
alertMsg += " - " + fieldDescription[i] + "\n";
}
break;
default:
}
if (obj.type == undefined){
var blnchecked = false;
for (var j = 0; j < obj.length; j++){
if (obj[j].checked){
blnchecked = true;
}
}
if (!blnchecked){
alertMsg += " - " + fieldDescription[i] + "\n";
}
}
}
}

if (alertMsg.length == l_Msg){
formobj.action = "hirdetes.php";
formobj.submit();
return true;
}else{
alert(alertMsg);
return false;
}
}
</script>

<body bgcolor="white" text="black" link="blue" vlink="purple" alink="red" background="images/hatter.jpg">
<form name="adatok" method="post" enctype="multipart/form-data">

<p style="line-height:120%; margin-top:15pt; margin-bottom:0%;" align="center"><img src="images/fej-b1.gif" width="100%" border="0"></p>

Aktív fórum témák meghatározása, mint a Weblaboron

Anonymous · 2006. Ápr. 29. (Szo), 11.09
Sziasztok!

Van egy saját kis fórum "motorom". Ehhez szeretnék késziteni egy olyan modult, ami itt a Weblaboron is szerepel, és amelynek a segítségével meg tudom mutatni az utolsó x db aktív fórum témát. Tehát azokat, amelyekbe az utolsó hozzászólások érkeztek.

Ehhez nekem meg kéne határoznom az adatbázistáblámból 5 db ft_id mezo erteket időrendben, de úgy, hogy ne szerepeljen benne kétszer ugyanaz az érték...

Tehát az alábbi kódhoz hasonlóan:

	$sql = "select * from forum_comments order by date desc limit 5";
	$result = mysql_query($sql) or die(mysql_error());

	echo "
		<h2>Új fórumtémák</h2>
		<ul id='new_topic'>";

	while ($r = mysql_fetch_array($result)) {
	
		echo "<li><a href='#'>$r[ft_id]</a></li>";
	}
	
	echo"</ul>";

Mindössze annyit kéne valahogy javítani vagy a lekérdezésen vagy php segítségével, hogy ugyanaz az $r[ft_id] érték nem szerepelhet benne. Hiszen, ha ugyanahhoz a témához érkezik az utolsó 5 hozzászólásból mondjuk 4, akkor a kimenet így fog kinézni:

<h2>Új fórumtémák</h2>
<ul id='new_topic'>
<li><a href='#'>2</a></li>
<li><a href='#'>4</a></li>
<li><a href='#'>2</a></li>
<li><a href='#'>2</a></li>
<li><a href='#'>2</a></li>
</ul>
Mi lehet a megoldás?
 

Tábla sor helyett új táblát generál minden sorra a kódom

Kaoru · 2006. Ápr. 29. (Szo), 09.12
Sziasztok, a következő problémám támadt:

Egy táblázatba szeretném lekérdezni a táblám sorait, de sehogy sem akar működni. Minden sornak csinál egy új üres táblát.
Élőben itt található:

Mivel nem vagyok még valami gyakorlot a php és mysql-ben, ezért kérném a segítésgeteket a hibaszűrésben.

A kód maga így néz ki:
<?php 
include("connect.php");

$sql="SELECT * FROM $mysql_table";
$result=mysql_query($sql);

while ($row=mysql_fetch_array($result))
{
?>
<table width="75%" border="1" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td>ID</td><td>Dancers</td><td>Country</td>
</tr>
<td><? echo $rows['id'];?></td><td><? echo $rows['fname1'];?> - <? echo $rows['fname2'];?></td> <td><? echo $rows['country'];?></td>
</tr>
</table>
<BR>
<?
}
mysql_close(); //close database
?>
Segítségeteket előre is köszönöm!
 

A Dojo.Storage a következő lépés az AMASS után

Hojtsy Gábor · 2006. Ápr. 29. (Szo), 08.31
András októberben adott hírt Brad Neuberg AMASS nevű projektjéről, mely a Flash adattároló képességeit adta a JavaScript fejlesztő kezébe, segítségével a hagyományos süti alapú kliens oldali adattárolási módnál jelentősen jobb lehetőségeket adva. Brad új fejlesztése az AMASS utóda, a Dojo.Storage, melyről részletesen ír bemutató blog bejegyzésében. A Dojo.Storage egy általános adattároló felületet szeretne adni, nem csak böngészőben futtatott JavaScript kódok számára.

Get the rendered style of an element

Hojtsy Gábor · 2006. Ápr. 29. (Szo), 06.29
HTML elemek végső stílus információjának lekérdezése