Permalänk
Medlem

2st Mysql Frågor (blob) etc

... Tycker fortfarande denna delen av forumet behöver en klistrad tråd så man kan fråga små saker utan att starta en ny tråd.. ;D

............................

Jag vet inte vad jag ska söka på när jag vill göra detta med Mysql.
Låt oss säga att jag har en produkt med en massa produktinformation. På produktens sida vill jag att all data ska visas, men på produktmenyn vill jag bara att det första 20 bokstäverna ska visas, sen några ... efter det

Vet hur man gör med fread men inte med mysql

$theData = fread($fh, 20); echo "$theData ...";

Där visas 20st första bokstäverna sen ... efter.

Så hur ska jag göra så denna koden visar 20st bokstäver? i produkt['information']

$query = mysql_query("SELECT * FROM produkter"); while($produkt = mysql_fetch_array($query)){ echo $produkt['produkt']; echo $produkt['information']; }

--------------------------------------------------------------
Försökt hitta hur man får en blob att visas som bild.

echo $produkt['bild']; //visar bara binära koden
Det jag hittat är att man ska
lägga till

header('Content-type: image/jpg');

över, men då får jag bara
en sådan krysslåda i hörnet och allt annat försvinner..

<?php include 'functions/connect_mysql.php'; $query = mysql_query("SELECT * FROM produkter"); while($produkt = mysql_fetch_array($query)){ $content = $produkt['bild']; header('Content-type: image/jpg'); echo $content; } ?>

Är det något fel inne i databasen?, det jag har i produkter är
id - INT - Primary - Ai
produkt - VARCHAR
Pris - VARCHAR
Information- TEXT
Bild - blob

Tack

(Som vanligt inget seriöst arbete, jag bara tränar php....)

Visa signatur

Samsung 34'' ultrawide curved
Logitech MX master & Logitech g910
Creative SoundBlaster Katana

Permalänk
Medlem

Kan inte php men kan hjälpa till med lite sql.

Jag förstod det som att det är databaskolumnen "information" du vill begränsa till 20 tecken.

Då borde denna sql query ge dig det du vill ha:
Select Id, Produkt, Pris, Left(Information, 20) + '...' As Information, Bild From Produkter

Edit: Glömde punkterna du bad om så jag lade till dem. Borde funka men har ingen mysql server att testa på.

Visa signatur

He who hasn't hacked assembly language as a youth has no heart. He who does so as an adult has no brain.
~John Moore

Permalänk
Medlem
Skrivet av Anaii:

Kan inte php men kan hjälpa till med lite sql.

Jag förstod det som att det är databaskolumnen "information" du vill begränsa till 20 tecken.

Då borde denna sql query ge dig det du vill ha:
Select Id, Produkt, Pris, Left(Information, 20) + '...' As Information, Bild From Produkter

Edit: Glömde punkterna du bad om så jag lade till dem. Borde funka men har ingen mysql server att testa på.

Tack, funkar prima.

Visa signatur

Samsung 34'' ultrawide curved
Logitech MX master & Logitech g910
Creative SoundBlaster Katana

Permalänk
Medlem

Ett tips är att skippa blobanvändning för bilder. Lagra ist bilder i en specifik katalog och spara sedan i databasen sökvägen till bilden.

Permalänk
Medlem

Det är nog inget du ska göra i SQL utan i presentationen (PHP i detta fallet) och då kanske i ett templatespråk (exempelvis Smarty).
Och sen kan du inte visa bilder på det sättet du gör. Du kan bara visa en bild i taget och inte loopa ut flera bilder sådär.

Permalänk
Medlem
Skrivet av materka:

Ett tips är att skippa blobanvändning för bilder. Lagra ist bilder i en specifik katalog och spara sedan i databasen sökvägen till bilden.

Det var ett bra svar. Tack, ska kolla över detta direkt!

Visa signatur

Samsung 34'' ultrawide curved
Logitech MX master & Logitech g910
Creative SoundBlaster Katana