táblázatban összekeveri a névhez tartozó számot, miértis?
sziasztok
csinálom ezt az oldalt: http://lampa-aruhaz.uw.hu/szaraplesk/index.php
de a lejárati idő nem a megfeleő domain névhez írodik ki, miért lehet ez?
kód részlet:
dbCsatlakozas();
$eredmenyDOMNAME = mysql_query( "SELECT dom_name FROM domain" );
$eredmenyKIFEV = mysql_query( "SELECT kif_ev FROM domain" );
$eredmenyKIFHONAP = mysql_query( "SELECT kif_honap FROM domain" );
$eredmenyKIFNAP = mysql_query( "SELECT kif_nap FROM domain" );
?>
<tr>
<td><font face="Verdana" size="1"><b>Domain név</b></font></td>
<td><font face="Verdana" size="1"><b>Lejárat (napokban)</b></font></td>
<?php
while ( $sor1 = mysql_fetch_row( $eredmenyDOMNAME ) )
{
print "<tr>\n";
foreach ( $sor1 as $mezo1 )
{
?>
<td>
<font face="Verdana" size="1">
<a href="dom_info.php?dom_name=<?php print $mezo1; ?>">
<?php print $mezo1; ?>
</a>
</font>
</td>
<?php
$sor2 = mysql_fetch_row( $eredmenyKIFEV );
foreach ( $sor2 as $mezo2 )
{
print "<td>\n";
$ev = "$mezo2";
$sor3 = mysql_fetch_row( $eredmenyKIFHONAP );
foreach ( $sor3 as $mezo3 )
{
$honap = "$mezo3";
$sor4 = mysql_fetch_row( $eredmenyKIFNAP );
foreach ( $sor4 as $mezo4 )
{
$nap = "$mezo4";
$idobelyeg_most = getdate();
$most = $idobelyeg_most["0"];
$idobelyeg_akkor = mktime( 0, 0, 0, $honap, $nap, $ev );
$lejar_belyeg = $idobelyeg_akkor - $most;
$lejar = ($lejar_belyeg - ($lejar_belyeg % 86400)) / 86400;
print $lejar;
}
}
print "</td>\n";
}
}
print"</tr>\n";
}
Előre is köszi a segítségeteket.
■ csinálom ezt az oldalt: http://lampa-aruhaz.uw.hu/szaraplesk/index.php
de a lejárati idő nem a megfeleő domain névhez írodik ki, miért lehet ez?
kód részlet:
dbCsatlakozas();
$eredmenyDOMNAME = mysql_query( "SELECT dom_name FROM domain" );
$eredmenyKIFEV = mysql_query( "SELECT kif_ev FROM domain" );
$eredmenyKIFHONAP = mysql_query( "SELECT kif_honap FROM domain" );
$eredmenyKIFNAP = mysql_query( "SELECT kif_nap FROM domain" );
?>
<tr>
<td><font face="Verdana" size="1"><b>Domain név</b></font></td>
<td><font face="Verdana" size="1"><b>Lejárat (napokban)</b></font></td>
<?php
while ( $sor1 = mysql_fetch_row( $eredmenyDOMNAME ) )
{
print "<tr>\n";
foreach ( $sor1 as $mezo1 )
{
?>
<td>
<font face="Verdana" size="1">
<a href="dom_info.php?dom_name=<?php print $mezo1; ?>">
<?php print $mezo1; ?>
</a>
</font>
</td>
<?php
$sor2 = mysql_fetch_row( $eredmenyKIFEV );
foreach ( $sor2 as $mezo2 )
{
print "<td>\n";
$ev = "$mezo2";
$sor3 = mysql_fetch_row( $eredmenyKIFHONAP );
foreach ( $sor3 as $mezo3 )
{
$honap = "$mezo3";
$sor4 = mysql_fetch_row( $eredmenyKIFNAP );
foreach ( $sor4 as $mezo4 )
{
$nap = "$mezo4";
$idobelyeg_most = getdate();
$most = $idobelyeg_most["0"];
$idobelyeg_akkor = mktime( 0, 0, 0, $honap, $nap, $ev );
$lejar_belyeg = $idobelyeg_akkor - $most;
$lejar = ($lejar_belyeg - ($lejar_belyeg % 86400)) / 86400;
print $lejar;
}
}
print "</td>\n";
}
}
print"</tr>\n";
}
Előre is köszi a segítségeteket.
huha
valoszimuleg azert nem jelennek meg jol az adataid, mert a kodod rossz.
hogy hol rossz, azt nem igazan tudom, mert a whileba agyazott tobbszoros (valoszinuleg teljesen felesleges) foreachek szamomra megfejthetetlenek, es nem is nagyon kellene ennek a kodnak a maszirozasara energiat forditani.
1. minek 4 lekerdezes 1 tablara, miert nem egyszerre kerdezed le a tabla tartalmat? akkor a mysql_fetch_row() szepen visszaadja az osszetartozo ertekekeket egy tombben, es mar csak ki kell irni
2. mi a kulonos oka annak, hogy az ev, honap, nap nem egyetlen DATE tipusu adat?
azaz: egy SELECT *-gal megkapod az eredmenytablat, a while-lal vegiglepkedsz a tabla sorain (en mysql_fetch_assoc()-t hasznalnek) es az egyes sorokbol kiemelheted a $row['dom_name'], $row['kif_datum'] ertekeket.
probald ki, menni fog
thx
de itt hogy már számolás is van (lejárat) igy már keveri a dolgokat.
az ev honap nap meg külön állitható ba lenyiló menüben mindegyik, aztán külön küldtem el. ez baj? vagy mktime() és időbélyegként mentsem?
nem megy
{
$eredmeny = mysql_query( "SELECT * FROM domain" );
$dom_darab = mysql_num_rows( $eredmeny );
if ( $dom_darab == 0 )
{
$uzenet = "Nincs még domain felvéve";
}
else
{
print "<table border=1>\n";
while ( $sor = mysql_fetch_assoc( $eredmeny ) )
{
print "<tr>\n";
foreach ( $sor as $cella )
{
print "\t<td>";
print $cella['dom_name'];
print "</td>\n";
print "\t<td>";
print $cella['ceg_name'];
print "</td>\n";
}
print "</tr>\n";
}
}
print "$uzenet";
}
Akármit írok a $cella utána zárójelbe, mindig az érték első karaterét írja ki.
Ha a lekérem az összes oszlopot (select *) akkor ki írja mindet, hiába irom a $cella után hogy nekem melyik oszlop tartalma kéne.
Ez a varicáió nem működik:(
$eredmeny = mysql_query( "SELECT dom_name, ceg_name FROM domain" );
while ( $sor = mysql_fetch_assoc( $eredmeny ) )
{
print "<tr>\n";
foreach ( $sor as $cella )
{
print "\t<td>";
print $cella;
print "</td>\n";
}
print "</tr>\n";
}
ez kiírja, de igy nem tudom külön választani a dom_name és a ceg_name celláit, tehát nem tudok velük majd számolni, ha a ceg_name helyett a kif_datum lesz...
megoldás szerintetek?
Kell az a foreach?
Valamit nem jól érte, de!
A foreach nem tudom minek kell?
dupla
fdasfsfd
időközben megoldottam a problémát, de köszi hogy írtál.