Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/08/2011, 14:58
surferpoint9819
 
Fecha de Ingreso: agosto-2011
Mensajes: 11
Antigüedad: 12 años, 6 meses
Puntos: 0
cambiar los nombres de países por sus banderas en una tabla

Buenas a todos :)

Estoy haciendo para mi trabajo una tabla en php que extrae datos de una bd en mysql, y uno de los campos es el país. Estoy intentando cambiar el nombre del país por su bandera y no lo consigo. He estado mirando este hilo:

http://www.forosdelweb.com/f18/sustituir-pais-por-bandera-727116/

en el que precisamente se trata ese tema pero ni aun así lo consigo. Tal vez ustedes me puedan ayudar. Los archivos php con los que trabajo son estos:

Código:
<!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=utf-8" />
<title>Journal Scholar: Global</title>
</head>
<?php
include("instrucciones.php");
?>
<body>
<p><?php
 //Connection
    $global_dbh = mysql_connect('localhost','root','3910') or die("Unable to connect: " . mysql_error() . "<br>");
    $database = mysql_select_db("prueba") or die( "Unable to select database<br>");
    $table = "hoja1";
    $page = "tabla";
    display_db_table($page, $table, $global_dbh, FALSE, "border='1'");
    ?></p>
 
</div>
</body>
</html>
Código:
<?php
function display_db_query($page, $query_string, $connection, $sort, $image, $table_params) {
    $result_id = mysql_query($query_string, $connection) or die("display_db_query:" . mysql_error());
    $column_count = mysql_num_fields($result_id) or die("display_db_query:" . mysql_error());
    // Here the table attributes from the $table_params variable are added
    print("<TABLE $table_params >\n");
    // Print Headers
    print("<TR>");
    for($column_num = 0; $column_num < $column_count; $column_num++) {
        $field_name = mysql_field_name($result_id, $column_num);
        echo ("<TH><a href=\"$page.php?order_by=$field_name&sorting=$sort\">$field_name</a></TH>");
    }
    print("</TR>\n");
    // Print the body
    while($row = mysql_fetch_row($result_id)) {
        print("<TR>");
        for($column_num = 0; $column_num < $column_count; $column_num++) {
	
              print("<TD class=field_$column_num>$row[$column_num]</TD>\n");
            
        }
        print("</TR>\n");
    }
    print("</TABLE>\n");
}
function display_db_table($page, $tablename, $connection, $image, $table_params) {
    $order_by = (isset($_GET['order_by'])) ? $_GET['order_by'] : 'Title';
    $sorting = (isset($_GET['sorting'])) ? $_GET['sorting'] : 'desc';
    switch($sorting){
  case "asc":
    $sort = 'desc';
    break;
  case "desc":
    $sort = 'asc';
    break;
    }
    $query_string = "SELECT * FROM $tablename ORDER BY $order_by"." $sort";
    display_db_query($page, $query_string, $connection, $sort, $image, $table_params);
}
?>
el campo "country" está en la columna número 1 ( $column_num = 1) así que estaba buscando alguna manera de expresar que "cuando $column_num = 1" imprima
Código:
print("<TD class=field_$column_num><img src="$row.png"></TD>\n")
en vez de lo normal que sería
Código:
print("<TD class=field_$column_num>$row[$column_num]</TD>\n")
Si alguno de ustedes me puede ayudar, estaría muy agradecido :)

Saludos