我想打印所有行的表列的值,我有一个sql开发人员文件,我的意思是我想打印每行的一些列,例如,如果我的表名为client并具有名称,子名称和电子邮件我想打印每个客户端名称,子名称和电子邮件,我已经找到了如何使用mysql进行创建,但是我想使用php和sql开发人员进行创建。
我显示的代码仅显示第一个用户名,而不显示其他用户的其余名称和其他列。
非常感谢。
bins = np.linspace(0,25.1,251,endpoint=False)
histogram = np.histogram(data,bins)
xvalues = [] #value inbetween bin edges
for i in range(len(histogram[1])-1):
xvalues.append(np.mean([histogram[1][i],histogram[1][i+1]]))
xvalues=np.array(xvalues)
def fit1(x,tau,y0,A,x0):
return y0+A*exp(-(x+x0)/tau)
lim = 180
popt1, pcov1 = curve_fit(fit1, xvalues[10:-lim], histogram[0][10:-
lim],sigma=fit1)
答案 0 :(得分:2)
您只得到一列,因为您只明确要求一列(使用fetchColumn()
)。 事实是,您只告诉SQL返回单个列。
更改查询:
// Replace column1 etc to the real column names
SELECT column1, column2, column3 FROM CLIENTE
然后,而不是使用fetchColumn()
(用于获取一个列),请使用:
return $stmt->fetchAll(PDO::FETCH_ASSOC);
,您应该获得一个包含所有三列的关联数组(每行一个)的数组。
但是,您还有另一个问题:
echo clientes($conexion);
由于您现在要返回一个数组,因此不能直接回显它。如果这样做,您将收到有关“数组到字符串转换”的警告。您需要遍历数组并根据需要输出数据:
$data = clientes($conexion);
// Again, change the column names
foreach ($data as $row) {
echo $row['column1'];
echo $row['column2'];
echo $row['column3'];
}
这将输出所有数据。不过,您可以决定布局。
答案 1 :(得分:0)
用于获取所有列
您需要解决不同的SQL查询,以便使其正常工作。目前,您只在寻找字段nombre
。尝试将其更改为:
$consulta = "SELECT * FROM CLIENTE";
使用星号可以调用表cliente
中的所有字段。为了提高性能,您只应调用所需的字段。看起来像这样:
$consulta = "SELECT nombre,dni,sexo FROM CLIENTE";
用于获取所有行
此刻,您仅在此处寻址一行。您需要将代码更改为
return $stmt ->fetchAll();
答案 2 :(得分:0)
我要打印找到的每个客户名称,子名称和电子邮件
然后您应该使用fetchall(),它将所有结果作为数组获取,然后遍历该数组并打印该数组的每个元素
function clientes($conexion) {
$stmt = $conexion ->query("SELECT name,subname,email FROM CLIENTE")->fetchall();
foreach($stmt as $row){
echo "Client Name : ".$row['name']."<br>";
echo "Client subname : ".$row['subname']."<br>";
echo "Client email : ".$row['email']."<br>";
}
}
clientes($conexion);
?>