|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Registered User
Iscritto dal: Dec 2005
Messaggi: 232
|
[PHP] Cerco un tutor per due domande...
C'è qualcuno che può perdere una decina di minuti a darmi una mano su un comando in php??? prima chiedo, poi spiego...così se qualcuno è davvero interessato si fa avanti.
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Nov 2001
Messaggi: 6139
|
forse faresti meglio a postare la tua richiesta.
|
|
|
|
|
|
#3 |
|
Registered User
Iscritto dal: Dec 2005
Messaggi: 232
|
In poche parole io ho questo file HTML:
<link href="fantamister.css" rel="stylesheet" type="text/css" /> <div id="cannonieri"> <table class='cannonieri' border="0" cellspacing="0" cellpadding="0"> <tr class="cannonieri"><td colspan="2" class="canTITOLO">CLASSIFICA CANNONIERI</td></tr> <tr class="cannonieri"><td class="canGOLd"> 2</td><td class="canNOMEd">ZALAYETA Marcelo (gmx generation)</td></tr> <tr class="cannonieri"><td class="canGOLp"> 1</td><td class="canNOMEp">RECOBA Alvaro (atletico mister)</td></tr> <tr class="cannonieri"><td class="canGOLd"> 1</td><td class="canNOMEd">CRESPO Hernan Jorge (vai tra)</td></tr> <tr class="cannonieri"><td class="canGOLp"> 1</td><td class="canNOMEp">NESTA Alessandro (right fighters)</td></tr> <tr class="cannonieri"><td class="canGOLd"> 1</td><td class="canNOMEd">SIMPLICIO Fabio Henrique (belli e ribelli)</td></tr> <tr class="cannonieri"><td class="canGOLd"> 1</td><td class="canNOMEd">PIRLO Andrea (belli e ribelli)</td></tr> </table> </div> Io ora dovrei togliere la riga: <tr class="cannonieri"><td colspan="2" class="canTITOLO">CLASSIFICA CANNONIERI</td></tr> e questa: <link href="fantamister.css" rel="stylesheet" type="text/css" /> Infine dovrei stampare a video solo i primi cinque marcatori, ovvero ottenere questo file: <div id="cannonieri"> <table class='cannonieri' border="0" cellspacing="0" cellpadding="0"> <tr class="cannonieri"><td class="canGOLd"> 2</td><td class="canNOMEd">ZALAYETA Marcelo (gmx generation)</td></tr> <tr class="cannonieri"><td class="canGOLp"> 1</td><td class="canNOMEp">RECOBA Alvaro (atletico mister)</td></tr> <tr class="cannonieri"><td class="canGOLd"> 1</td><td class="canNOMEd">CRESPO Hernan Jorge (vai tra)</td></tr> <tr class="cannonieri"><td class="canGOLp"> 1</td><td class="canNOMEp">NESTA Alessandro (right fighters)</td></tr> <tr class="cannonieri"><td class="canGOLd"> 1</td><td class="canNOMEd">SIMPLICIO Fabio Henrique (belli e ribelli)</td></tr> </table> </div> E' un esempio, perchè questo file generato da un programma viene aggiornato ogni settimana. Sapete dirmi qualcosa??? |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
|
Ma sei tu a far generare l'HTML tramite php (ovvero puoi modificare il file php) oppure hai solo l'HTML e devi modificare per forza quello?
Nel primo caso, dovresti postare il codice php che genera quel documento html, senza quello risulta impossibile darti una risposta precisa. Comunque, per limitare a 5 il numero dei record da stampare, ti basta inizializzare un contatore ed eseguire il ciclo di stampa finchè il contatore non raggiunga 5. Per esempio: Codice:
<?php
$i = 0;
while ($row = mysql_fetch_array($risultato, MYSQL_ASSOC) && $i<5)
{
echo
"<tr class='cannonieri'>
<td class='canGOLd'>"
.$row['GOL'].
"</td><td class='canNOMEd'>"
.$row."['GIOCATORE']
</td></tr>";
$i++;
}
?>
__________________
Il sole è giallo |
|
|
|
|
|
#5 |
|
Registered User
Iscritto dal: Dec 2005
Messaggi: 232
|
In primis grazie della risposta!!!
Il file è creato da un programma (exe) e non posso modificare l'uscita. In passato grazie all'aiuto di un mio amico, ho utilizzate queste righe di PHP: <?php $puntFile=fopen("statistiche/cannonieri.htm","r"); $datiFile=fread($puntFile,filesize("statistiche/cannonieri.htm")); fclose($puntFile); $edit_File=str_replace("<tr class='titolo'><td colspan='2' align='center'>CLASSIFICA MARCATORI</td></tr>","",$datiFile); $clear_File=strip_tags($edit_File,"<tr><td><table>"); $occ=explode("</tr>",$clear_File); $prima_riga=1; $ultima_riga=5; echo "<table border= 0 cellspacing= 0 cellpadding= 0 >"; for($i=($prima_riga-1);$i<=($ultima_riga-1);$i++) echo "$occ[$i]</tr>"; echo "</table>"; ?> Ma ora non vanno più bene per quel file. Il file si chiama cannonieri.htm. Premetto che non posso usare MySQL. Sai se è possibile modificando il codice qui sopra??? Come detto prima dovrei togliere dal file HTM quelle due righe: <tr class="cannonieri"><td colspan="2" class="canTITOLO">CLASSIFICA CANNONIERI</td></tr> <link href="fantamister.css" rel="stylesheet" type="text/css" /> E stampare a video solo i primi 5 cannonieri (che con il tempo la lista portà allungarsi). E' possibile ottenere questo??? |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
Ciao pix83, questo dovrebbe andare
Codice:
<?php
$puntFile=fopen("statistiche/cannonieri.htm","r"); //devi inserire il percorso del file
$datiFile=fread($puntFile,filesize("statistiche/cannonieri.htm")); //devi inserire il percorso del file
fclose($puntFile);
$clear_File=strip_tags($datiFile,"<tr><td><table><div>");
$occ=explode("</tr>",$clear_File);
$before=str_replace("<tr class=\"cannonieri\"><td colspan=\"2\" class=\"canTITOLO\">CLASSIFICA CANNONIERI</td>","",$occ[0]);
$prima_riga=1;
$ultima_riga=5;
echo $before;
for($i=$prima_riga;$i<$ultima_riga;$i++) echo $occ[$i]."</tr>";
echo "</table>";
?>
|
|
|
|
|
|
#7 |
|
Registered User
Iscritto dal: Dec 2005
Messaggi: 232
|
Grande MEMon!!!
Una cosa, mi da questo in uscita (che è ottimo!!!): <div id="cannonieri"> <table class='cannonieri' border="0" cellspacing="0" cellpadding="0"> <tr class="cannonieri"><td class="canGOLd"> 4</td><td class="canNOMEd">MUTU Adrian (atletico mister)</td></tr> <tr class="cannonieri"><td class="canGOLp"> 4</td><td class="canNOMEp">IBRAHIMOVIC Zlatan (belli e ribelli)</td></tr> <tr class="cannonieri"><td class="canGOLd"> 4</td><td class="canNOMEd">TOTTI Francesco (vai tra)</td></tr> <tr class="cannonieri"><td class="canGOLp"> 3</td><td class="canNOMEp">ZALAYETA Marcelo (gmx generation)</td></tr></table> Una domanda...anzi due... Perchè mi lascia la riga vuota??? e ultima, hai dato come chiusura il DIV ed è OK, ma non me lo riporta, why??? |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
La chiusure del div viene cancellata, mi sono scordato di rimetterla, aggiungila te dopo la chiusura della table
echo "</table></div>"; Per la riga vuota non ti preoccupare che tanto non viene considerata dal browser! |
|
|
|
|
|
#9 |
|
Registered User
Iscritto dal: Dec 2005
Messaggi: 232
|
Fatto!!! che stupido, potevo arrivarci da solo
Togliere la riga vuota è possibile comunque??? |
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
Metti questa
Codice:
$before=preg_replace("/\n<tr class=\"cannonieri\"><td colspan=\"2\" class=\"canTITOLO\">CLASSIFICA CANNONIERI<\/td>/","",$occ[0]);
|
|
|
|
|
|
#11 |
|
Registered User
Iscritto dal: Dec 2005
Messaggi: 232
|
Grazie MEMon!!! e scusa se ti disturbo sempre
|
|
|
|
|
|
#12 |
|
Registered User
Iscritto dal: Dec 2005
Messaggi: 232
|
Vi spiego subito il mio problema...di sotto vi posto il codice HTML della mia pagina. Fila tutto liscio, finchè non inserisco il primo script in PHP. Appena lo inserisco mi manda tutto fuori allineamento. Ovvero, Il DIV nominato "DATA" me lo sbatte sotto, rovinandomi anche l'allineamento del DIV "FOOTER". Vi linko l'esempio pagina corretta (senza script PHP):
http://www.masterleague.eu/prova/index1.php Come detto, se inserisco, nell'ultimo DIV del menu a sinistra questo script in PHP: codice PHP: Codice PHP:
http://www.masterleague.eu/prova/index2.php Il problema è che ci sbatto pure la testa in giro per trovare soluzioni, anche sulle guide o libri, ma non trovo l'errore porca puzzola!!! pensavo fosse dovuto alla grandezza delle tabelle del file CANNONIERI.HTM che importavo. Ma non è così...non ci riesco, e a pensarci mi incaxxo !!!... Vi posto il codice CSS: /*** HTML & BODY ***/ html,body { margin: 0; padding: 0; } body { font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 10px; } #container { width: 980px; \width: 1000px; w\idth: 980px; border: 1px solid gray; margin-left: auto; margin-right: auto; background: url(../images/page/page_background.jpg) repeat-y; } #title { width: 940px; height: 143px; margin: 0px 20px 0px 20px; background: url(../images/page/page_title.jpg) no-repeat; } #line { width: 940px; height: 12px; margin: 0px 20px 0px 20px; background: url(../images/page/page_line.jpg) repeat-x; } #content { width: 940px; margin: 0px 20px 0px 20px; overflow: hidden; background: Silver; } #menu { width: 220px; float: left; background: Yellow; } #data { width: 720px; float: left; background: Lime; } #footer { width: 940px; height: 104px; margin: 0px 20px 0px 20px; clear: both; overflow: hidden; background: #FFFFFF url(../images/page/page_footer.jpg) repeat-x top; } /*** CLASSE "FabClearing" ***/ .cleared:after { display: block; visibility: hidden; content: "."; height: 0; clear: both; } .cleared { clear: both; /* per Gecko */ height: 1%; /* per IE */ } /*** MENU DI NAVIGAZIONE ***/ #menu a{ color: #000000; text-decoration: none; } #menu a:hover{ color: #CAA200; text-decoration: none; } #menu ul a:hover{ color: #DBDBDB; text-decoration: none; } #menu_line{ width: 220px; height: 19px; float: left; background: url(../images/page/menu_line.jpg) repeat-x; } #menu_link{ width: 215px; height: 16px; padding-left: 5px; padding-top: 3px; font-weight: bold; float: left; background: url(../images/page/menu_link.jpg) repeat-x; } #menu_title{ width: 215px; height: 16px; padding-left: 5px; padding-top: 3px; font-weight: bold; float: left; background: url(../images/page/menu_title.jpg) repeat-x; } #menu_java{ width: 220px; height: auto; float: left; background: #E3E3E3; } #menu_java2{ width: 200px; height: auto; float: left; background: #E3E3E3; } #smenu01{ float: left; width: 215px; height: 0px; background-color: #A4A4A4; padding-left: 5px; } #smenu02{ float: left; width: 215px; height: 0px; background-color: #A4A4A4; padding-left: 5px; } #smenu03{ float: left; width: 215px; height: 0px; background-color: #A4A4A4; padding-left: 5px; } #smenu04{ float: left; width: 215px; height: 0px; background-color: #A4A4A4; padding-left: 5px; } #smenu05{ float: left; width: 215px; height: 0px; background-color: #A4A4A4; padding-left: 5px; } ...e il codice HTML della pagina: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Campionato Fantacalcio MASTER LEAGUE 07/08 - Seconda Edizione</title> <link href="css/style.css" rel="stylesheet" type="text/css" /> <script language="JavaScript" type="text/javascript" src="js/page/prototype.lite.js"></script> <script language="JavaScript" type="text/javascript" src="js/page/moo.fx.js"></script> <script language="JavaScript" type="text/javascript" src="js/page/moo.fx.pack.js"></script> <script type="text/javascript"> window.onload = function() { menu01 = new fx.Height('smenu01', {duration: 400}); menu02 = new fx.Height('smenu02', {duration: 400}); menu03 = new fx.Height('smenu03', {duration: 400}); menu04 = new fx.Height('smenu04', {duration: 400}); menu05 = new fx.Height('smenu05', {duration: 400}); } </script> </head> <body> <div id="container"> <div id="title"></div> <div id="line"></div> <div class="cleared" id="content"> <div id="menu"> <div id="menu_line"></div> <div id="menu_link">HOME</div> <div id="menu_link"><a href="#" onclick="menu01.toggle(); return false">SQUADRE</a></div> <div id="smenu01">PROVA PROVA PROVA</div> <div id="menu_link">CLASSIFICA</div> <div id="menu_link"><a href="#" onclick="menu02.toggle(); return false">RISULTATI</a></div> <div id="smenu02">PROVA PROVA PROVA</div> <div id="menu_link">CALENDARIO</div> <div id="menu_link">FORMAZIONI</div> <div id="menu_link">TABELLINO VOTI</div> <div id="menu_link"><a href="#" onclick="menu03.toggle(); return false">STATISTICHE</a></div> <div id="smenu03">PROVA PROVA PROVA</div> <div id="menu_link">REGISTRO SQUADRE</div> <div id="menu_link">INVIO FORMAZIONE</div> <div id="menu_link"><a href="#" onclick="menu04.toggle(); return false">ALBO D'ORO</a></div> <div id="smenu04">PROVA PROVA PROVA</div> <div id="menu_link"><a href="#" onclick="menu05.toggle(); return false">NEWS</a></div> <div id="smenu05">PROVA PROVA PROVA</div> <div id="menu_title">RISULTATI ULTIMA GIORNATA</div> <div id="menu_java">kiki</div> <div id="menu_title">CLASSIFICA</div> <div id="menu_java">kiki</div> <div id="menu_title">PROSSIMO TURNO</div> <div id="menu_java">kiki</div> <div id="menu_title">CLASSIFICA MARCATORI ML</div> <div id="menu_java"> <?php $puntFile=fopen("stat/ml/cannonieri.htm","r"); $datiFile=fread($puntFile,filesize("stat/ml/cannonieri.htm")); fclose($puntFile); $clear_File=strip_tags($datiFile,"<tr><td><table><div>"); $occ=explode("</tr>",$clear_File); $before=str_replace("<tr class=\"cannonieri\"><td colspan=\"2\" class=\"canTITOLO\">CLASSIFICA CANNONIERI</td>","",$occ[0]); $prima_riga=1; $ultima_riga=5; echo $before; for($i=$prima_riga;$i<$ultima_riga;$i++) echo $occ[$i]."</tr>"; echo "</table>"; ?> </div> </div> <div id="data"> <?php include ("inc/txt.inc"); ?> </div> </div> <div id="footer"></div> </div> </body> </html> Vi giuro che non trovo errori, è questo mi fa innervosire, perchè s emi combina questo vuol dire che ci sono(!!!)...qualche anim apia che sa darmi indicazioni???...magari sbagli in più cose. Pero' ho notato una cosa, se a posto dello Script in PHP di MEMon uso un semplice Include non mi da questi problemi di allineamento, come mai??? |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:51.



















