Newsgroup: it.comp.www.php
Titolo: modificare Dimensione colonne

Ciao!
Ho creato una tabella che stampa i dati del db e funziona tutto,
l'unica cosa che non riesco a gestire è la larghezza delle colonne,
cosa devo modificare per allargarle?
Grazie Lid
Incollo il codice
//test per cambiare titoli!
function changename($str) {
  $str = str_replace("Gross_Offered ", "Gross Offered ",  $str);
  $str = str_replace("date", "Date ",  $str);
  return $str;
}
if(isset($_POST['nome'])) {
   $azienda = $_POST['nome'];
   if($azienda == "Telephony Daily ..."){
       $sql = "SELECT .......from [$azienda]";
       $sql = "SELECT .......from [$azienda]";
    }else{
       $sql = "";
       echo "errore nella definizione del nome azienda";
   }
}
if ($azienda != "") echo "<font size=4>"."<font face=Verdana, Arial,
Helvetica, sans-serif color=black>".$azienda; // azienda dovrebbe
essere giusto
?>
<style>
A:link { text-decoration : none ; color: blue }
A:visited {text-decoration : none ; color: blue }
A:hover { text-decoration : none ; color: blue }
</style>
&nbsp;&nbsp;&nbsp;&nbsp;<FONT FACE="Verdana, Arial, Helvetica, sans-
serif" COLOR="#00008B" SIZE="3"> <a
href="testa.php"class="noline"><b>Back</b></a></FONT><br />
<br />
<html><head></head><body>
<?php
# Se la query che ricavo dagli if precedenti ha un valore
if ($sql != "")  {
   $result = mssql_query($sql);
   //verifichi il risultato se diverso da 0. Se fallisce significa che
non ci sono tabelle nel db
   if (!$result) {
       echo "DB Error, could not list tablesn";
      //echo 'MSSQL ERROR: '.mssql_get_last_message();
      exit;
   }
//alternerno il colore della tabel
/*$color = "grigia";
if ($color == "grigia") {
   $style = " style=\"background: red;\"";
   $color = "red";
} else {
   $style = " style=\"background: #C0C0C0;\"";
   $color = "grigia";
}
*/
?>
<?php
if(mssql_num_rows($result) == 0) die("No record");
echo '<table width="50">';
echo '<table border="1" width="10" bordercolor="black"
cellspacing="0">';
echo '<tr>';
for($i =0; $i < mssql_num_fields($result); $i++) {
  echo  '<th bgcolor= "#cccccc"  width="1000%"
bordercolor="black">'.'<font size=1>'.'<font face=Verdana, Arial,
Helvetica, sans-serif color=black>'.
changename(mssql_field_name($result, $i)) . '</th>';
}
echo '</tr>';
while ($row = mssql_fetch_array($result, MSSQL_ASSOC)) {
#
//echo"<tr bgcolor=$color><td>$array[notizia]</td></tr>";
   foreach($row as $val) {
     echo  '<td width="10" bordercolor="black">'.'<font
size=1>'.'<font face=Verdana, Arial, Helvetica, sans-serif
color=black>' . $val .'</td>';
 }
   echo '</tr>';
}
echo '</table>';
#
mssql_free_result($result);
# chiusura connessione da lasciare fuori dall'if
mssql_close($link);
?>
</table></body></html>

 bordercolor="black">'.'<font size=1>'.'<font face=Verdana, Arial,
border, borderwidth, width, cellspacing, bgcolor non vanno usati. Usa i 
CSS per queste cose.
Per il resto, si tratta di un problema di HTML e non di PHP, risolvibile 
facilmente coi CSS e la proprieta` "width" dei td.
Bye.

 
scusate se mi intrometto
non avevo mai pensato che mischiare php e html fosse sbagliato
per esempio, se devo eseguire alcune operazioni dopo il submit di un form
ho sempre fatto così:
all'inizio del file ho sempre messo le istruzioni php per recuperare 
i dati inseriti nel form, e anche per controllare eventuali errori,
poi inizio la parte html ...
<html ...>
    	<head>
    	    	<title>...</title>
    	    	... altre cose ...
<body>...
e poi dentro il body il codice php che esegue le operazioni
ed esegue i vari print
però da quello che scrivi tu mi pare di capire che è meglio mettere
le istruzioni php tutte prima del tag <html>
invece per mettere il php in un file separato cosa intendi di preciso ?
questo file separato che contiene il codice php
alla fine fa un include del file html ?

 alla fine fa un include del file html ?
Puoi utilizzare un template engine per separare la logica applicativa
da quella di presentazione oppure un framework di sviluppo.
-- 
Vuoi distribuire il tuo sito web su CD/DVD?
Prova 
http://www.dwebpro.com/
Vuoi diventare un esperto analista PHP/MySQL?
Vieni a fare uno stage con noi: 
http://www.creativepark.it/stage/

 del file html ?
Dipende da come vuoi strutturare la pagina.
Il metodo piu` comune e` di avere quello che si chiama "controller" che 
riceve la chiamata dal browser, quindi avrai la pagina "index.php" che 
contiene solo il codice PHP, e prende l'HTML da un file esterno (per 
esempio "views/index.php":
index.php
---------
<?php
 $view = array();
 
 if (isset($_SESSION["user"]) {
  $view["nome"] = $_SESSION["user"]["name"];
 } elseif (isset($_POST["username"])) {
  $db = mysql_connect(...);
  $res = mysql_query("select * from user where ".
         "username = '" .mysql_real_escape_string($_POST["username"])."'".
         " and pass = '" .mysql_real_escape_string($_POST["pass"])."'";
  if (mysql_num_rows()) {
    $_SESSION["user"] = $res;
    $view["nome"] = $res["name"]);
  }
 }
 include("views/index.php");
?>
views/index.php
---------------
<html>
 <head><title>Index!</title></head>
 <body>
  <?php if (isset($view["name"]): ?>
    <div class="saluto">
      Benvenuto <?php print $view["nome"]; ?>
    </div>
  <?php endif; ?>
  <div class="main"
   ...
  </div>
 </body>
</html>
Come vedi l'HTML rimane molto piu` pulito e mantenibile, ed ha il 
vantaggio che puoi praticamente darlo in mano agli HTMListi che non sanno 
niente di PHP, con l'unica raccomandazione di non togliere niente di 
quello che sta dentro <?php ... ?>
Addirittura Dreamweaver contrassegna il codice PHP con un'icona apposita 
nel preview.
Quello sopra e` il metodo "spartano", ma puoi inglobare le varie 
componenti in classi, come fa lo Zend Framework, o usare un motore di 
templating come smarty, come dice Filippo, che fa esattamente la stessa 
cosa ma con un set di comandi e direttive personalizzate.
Bye.