Select Coloane si date din tabel MySQL

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
CristianAlexandru17
Mesaje:13

Select Coloane si date din tabel MySQL

Salut,
Exista vreo posibilitate dea a extrage din baza de date mysql coloana si randul respectiv?
De exemplu:

Cod: Selectaţi tot

user_id : 1
username : Cristi
Vreau sa fac acest lucru in timp real, adica pe masura ce adaug coloane noi si utilizatorii se inregistreaza sa apara automat in pagina respectiva. Eu am incercat ceva de genu':

Cod: Selectaţi tot

<?php
 $querying_4_columns = mysql_query("SHOW COLUMNS FROM `tabel`");
 $querying_4_data = mysql_query("SELECT * FROM `tabel` ORDER BY `a_column` ASC"); 
 while($column = mysql_fetch_array($query_4_columns) && $row =  mysql_fetch_array($query_4_data)){
  echo $column[1].' '.$row[1].'<br />';
 } 
?>
... si nu a returnat nimic.
Cum as putea face asta?


P.S.
Voi face in curand migrarea la PDO sau MySQLi!
Multumesc mult,
Cristi

MarPlo Mesaje:4343
Salut
De ce nu folosesti un simplu Select, asa:

Cod: Selectaţi tot

<?php
 $querying_4_data = mysql_query("SELECT * FROM `tabel` ORDER BY `id` ASC"); 
 while($row =  mysql_fetch_array($query_4_data)){
  echo $row[0] .' - '. $row[1] .'<br />';
 } 
?>
Sau folosind numele coloanelor:

Cod: Selectaţi tot

echo $row['id'] .' - '. $row['nume_col'] .'<br />';
- Pentru PDO sau /si MySQLi poti incerca Clasa PDO_MySQLi , e usor de folosit si te scuteste de scris cod in plus.

CristianAlexandru17 Mesaje:13
Am incercat si exemplul dat de tine, dar trebuie sa stau eu sa fac update la pagina de fiecare data cand adaug o noua coloana in tabel.

Eu voiam ceva gen Auto-Update.

MarPlo Mesaje:4343
De obicei, cand se inregistreaza noi utilizatori, se adauga pe randuri, nu se adauga pe coloana noua.
Coloanele se creaza cand se face tabelul, si in general raman fixe, doar daca vrei sa retii si alt tip de date mai creezi manual o alta coloana; dar datele sunt retinute pe randuri.

Daca folosesti clasa PDO_MySQLi, ai si numarul de coloane returnate. Poti face asa cu acea clasa:

Cod: Selectaţi tot

<?php
// se include fisierul in care sunt datele de conectare, clasa inclusa si obiectul $conn de lucru cu ea

$sql = "SELECT * FROM `tabel` ORDER BY `id` ASC";

// executes the SQL query, and gets the selected rows
$rows = $conn->sqlExecute($sql);

$nr_rows = $conn->num_rows;          // number of selected rows
$nr_cols = $conn->num_cols;          // number of selected columns

// if there are returned rows, traverses the array with rows data
if($nr_rows > 0) {
  foreach($rows AS $row) {
    echo '<br/>';
    for($i=0; $i<$nr_cols; $i++) echo ' - '. $row[$i];
  }
}
else {
  if($conn->error) echo $conn->error;      // if error, outputs it
  echo '0 selected rows';
}
 

Subiecte similare