PHP; Veta användarens browserwindow storlek?

Permalänk
Medlem

PHP; Veta användarens browserwindow storlek?

Förstår att php är serverspråk, men kan man på något vis komma åt använarens storlek på browsern?
Tänker då från "startmenyn" upp till där adressfältet är och från vänster kant till scrollisten?

Anledningen är att jag har en bild som genereras i php och vill att bilden uppdateras med jämna mellanrum automatiskt.
Om användaren minskat storlek på fönstret ska bilden "passa in sig" i rutan.
Hittade en länk till den här sidan när jag googlade runt http://www.perraultarchitecte.com/en/projects/2461-olympic_te...
Om man minskar storleken på fönstret så ser man att bilden i mitten ändrar storlek.
Min tanke är att göra något liknande med en bild, så användaren kan ha bilden i ett hörn på en skärm, eller halva skärmen om hen så önskar.

Går det via php?
Vad finns det för alternativa lösningar?
Själva storleksförändringen på bilden kan mycket väl hända när sidan uppdateras så det är inget problem.
Två input fields som läses av var gång sidan laddas om, är det en lösning? Inte snyggt och inget jag önskar men det accepteras om det fungerar.

Förslag?

Permalänk
Medlem

Du borde läsa lite om "CSS", vilket används för att göra att bilder visas i passande relativ storlek till användarens skärm. Alternativt finns det javascript om du vill att användaren ska kunna aktivt bestämma storlek på bilden. När du säger att bilden genereras i php, menar du via imagacreate() eller att du faktiskt bara skapar länken till bilden i php?

Permalänk
Medlem

Bilden i sig är i grunden en jpg men sen lägger php koden på linjer som ritas beroende på extern data.
Minns inte koden utantill, men det är nog imagecreate() .

Permalänk
Medlem

Ska kolla på css, tack för tipset

Permalänk
Medlem

Ta en titt på css media queries

Permalänk
Medlem

Ett annat alternativ är AJAX. AJAX är oftast JavaScript och PHP, där JavaScript kallar på en PHP-fil som körs och ger ett resultat tillbaka. Dels kan du med JavaScript ta reda på fönstrets storlek och skicka det till PHP-filen, och dels kan detta göras utan att sidan laddas om.

Permalänk
Medlem

Måste säga att CSS/Bildförhållande i HTML känns som de smidigaste sättet för detta.

Visa signatur

Kom ihåg att ALLTID citera mig om du vill ha svar!

|CPU: Intel Core i7 4790K Kyld av: Corsair H80 GPU: ASUS GTX 970 4GB Chassi: Phanteks Enthoo Evolv MOBO: MSI Z97M Gaming Nätagg: XFX 750W Silver SSD: Kingston 120GB SSDNow V300 HDD: Samsung Spinpoint F3 1TB 7200RPM + 1TB|

Permalänk
Medlem

Det tog lite tid för mig att förstå men nu lyckades jag.

Men inte med css, utan jag märkte att jag kunde skriva height och width 100% så blev det så som jag tänkte.
Men det kanske blir bättre med css?

Permalänk
Medlem
Skrivet av Agonotheta:

Det tog lite tid för mig att förstå men nu lyckades jag.

Men inte med css, utan jag märkte att jag kunde skriva height och width 100% så blev det så som jag tänkte.
Men det kanske blir bättre med css?

Height och width är CSS.

Visa signatur

Spela Swemantle! Du vet att du vill.

Ibland har jag fel, men då är det någon annans fel.

Permalänk
Medlem

Jaha...
Hade jag ingen aning om.

Men det funkar bra. Hittade en annan sida som hade en mer komplicerad lösning men till slut kom jag på att jag kunde använda height och width.

Permalänk
Medlem
Skrivet av Agonotheta:

Förstår att php är serverspråk, men kan man på något vis komma åt använarens storlek på browsern?
Tänker då från "startmenyn" upp till där adressfältet är och från vänster kant till scrollisten?

Anledningen är att jag har en bild som genereras i php och vill att bilden uppdateras med jämna mellanrum automatiskt.
Om användaren minskat storlek på fönstret ska bilden "passa in sig" i rutan.
Hittade en länk till den här sidan när jag googlade runt http://www.perraultarchitecte.com/en/projects/2461-olympic_te...
Om man minskar storleken på fönstret så ser man att bilden i mitten ändrar storlek.
Min tanke är att göra något liknande med en bild, så användaren kan ha bilden i ett hörn på en skärm, eller halva skärmen om hen så önskar.

Går det via php?
Vad finns det för alternativa lösningar?
Själva storleksförändringen på bilden kan mycket väl hända när sidan uppdateras så det är inget problem.
Två input fields som läses av var gång sidan laddas om, är det en lösning? Inte snyggt och inget jag önskar men det accepteras om det fungerar.

Förslag?

Du bör läsa lite om responsivitet låter det som. Om du har en div som ska fylla ut en hel bredd s ålänge upplösningen inte är under 1000px bred tex. Så kan du med media query sätta alternativ CSS kod när det villkoret du sätter där uppfylls. Detta är vanligt med sidor som skalar för surfplatta och mobiler.

Här är en länk med info som visar hur det fungerar.

http://learn.shayhowe.com/advanced-html-css/responsive-web-de...

PHP är mer för funktioner. Det är programmering mer, html och css är kodning.

Visa signatur

Chassie: Cooler Master Storm Scout. CPU: Intel Core I5 2500K @ 3.3 Ghz. RAM: Corsair Vengeance 2x4gb 1600mhz. MK: MSI P67A-GD65. PSU: Corsair cx 500w v2. GPU: GeForce GTX 560 Ti. HDD: 1 Tb WD green 64mb cache. Monitor: Samsung Syncmaster P2450

Permalänk
Skrivet av Jespuur:

>Om du har en div som ska fylla ut en hel bredd så länge upplösningen inte är under 1000px bred tex.

Vill bara påpeka att du inte behöver något "media query" (vet inte vad det är ens) för att göra detta. i css har du "min-width: 1000px" tillexempel.

Permalänk
Medlem
Skrivet av Whaleboobs:

Vill bara påpeka att du inte behöver något "media query" (vet inte vad det är ens) för att göra detta. i css har du "min-width: 1000px" tillexempel.

"min-width: 1000px" ger (oftast) scrollande på en mobil enhet, något man kan komma förbi med "media query" som ger dig möjlighet att ändra sidans uppbyggnad baserat på hur många pixlar besökarens webläsare visar på bredden och/eller höjden.

Visa signatur

WS: MSI B350M Mortar | AMD Ryzen 7 1700 | PH-TC14PE | 32GB DDR4 3000MHz | 1TB Kingston NV2 | Intel Arc A750 8GB | 2*BenQ G2420HDB
Router: Gigabyte GA-870-UD3 | AMD Phenom II x6 1055t @ 2600MHz, 1.25V | 12GB DDR3 | 2*250GB HDD @ RAID1 | 4TB HDD
Laptop: Thinkpad X220 4291-QF6

Permalänk
Medlem
Skrivet av Agonotheta:

Jaha...
Hade jag ingen aning om.

Men det funkar bra. Hittade en annan sida som hade en mer komplicerad lösning men till slut kom jag på att jag kunde använda height och width.

Har du "auto-genererat" din CSS kod på något sätt? För height och width är ju CSS parametrar och jag antar att det måste vara det du sökte på när du hittade din lösning.

Visa signatur

Reason keeps escaping.

Permalänk
Medlem

För att vara lite tydlig:

<img src="bild.jpg" width="100" height="100" /> är inte CSS
<img src="bild.jpg" style="width:100px;height:100px" /> innehåller CSS

Visa signatur

MacBook Pro 14" | M1 Pro 10/16-Core | 32GB | 1TB
Legion Pro 16" | Ryzen 7 5800H | 16 GB | 1TB | GeForce RTX 3060

Permalänk
Medlem

*** raderat ***

Men fine, till TS:

Citat:

Set the image containers width in percent as in width:{amount}%;, then set the image's width in percent also. This way your image container expands as your image expands also, or at least it will seem like so, because the image is actually expanding as the container expands. You dont necessarily need to set the image width to 100%, but whatever with you set is relative the containers width.

CSS Responsive Web Design

Visa signatur

14700k @ Stock . 32GB @ 4000MHz . 3070 @ +100/+800MHz
240+360 rad custom loop

Permalänk
Hedersmedlem

*** tråd modererad ***

Jag har raderat flera ohjälpsamma och hånfulla inlägg och några onödiga svar på detta. Forumreglerna är tydliga:

Citat:

§ 1.2 Uttalanden som kan uppfattas som stötande eller kränkande är inte tillåtna. Argumentera gärna, men låt det inte spåra ur till pajkastning.

Jag ber er därför försöka hålla diskussionen till det tråden handlar om och vara hjälpsamma istället för att ifrågasätta personers rätt att ställa frågor.

/KimTjik