Maskinistens Twitter-flöde  Stöd Maskinisten via Patreon  Maskinistens nätverk - information på svenska  Maskinistens nätverk - information på finska  Maskinistens nätverk - information på norska  Maskinistens nätverk - information på danska  Maskinistens nätverk - information på isländska
Forumindex

ForumindexForumindexMaskin-databasFotoalbumKalender-informationKöp & SäljDownloadsLexikonKontaktregisterCrimedatbase

Åkerman-register
Visa forum för mobila enheter

ForumindexAdministrativtÖnskemål/FeedbackBuggar

Något fel på "Olästa inlägg (4) / Ändrade inlägg (0)"

11 inlägg • Sida 1 av 1
Rapportera buggar som ni hittar här!

Duffy (trådstartaren)

#1 » 16:49:33, 14-08-2012
  • Överför markerat ord till lexikonet

Får något felmeddelande när jag trycker på "Olästa inlägg (4) / Ändrade inlägg (0)" länken,.

Bifogar en bild så Holger ser vad det är,.
Bild
Duffy
Fler än 100 inlägg
 
Blev medlem: 20:17:27, 18-06-2011
Ort: Kristinehamn
Sverige
Maskintyp: Lastbil



Duffy (trådstartaren)

#2 » 17:08:44, 14-08-2012
  • Överför markerat ord till lexikonet

Nu hade det visst gått över igen :klia:
Duffy
Fler än 100 inlägg
 
Blev medlem: 20:17:27, 18-06-2011
Ort: Kristinehamn
Sverige
Maskintyp: Lastbil

Holger

#3 » 20:47:34, 14-08-2012
  • Överför markerat ord till lexikonet

Det är ett temporärt fel när det är för mycket att göra för databasen.
Användarvisningsbild
Holger
Webmaster
Webmaster
 
Blev medlem: 10:54:48, 12-10-2003
Ort: Hannover
Sverige
Maskintyp: Hjullastare
Maskin: Test

Robban_C

#4 » 22:29:24, 14-08-2012
  • Överför markerat ord till lexikonet

Finns det inget Try/Catch i php-världen?

Ungefär så här går ett snyggt anrop till db till:
Kod: Markera allt
try
       {
            // Gör access till db
            lämplig kod för access till db;
        }
        catch (db access exception)
        {
            // Här hanterar man felet "db access exception"
            kod för att lägga upp ett snyggt och artigt felmeddelande;
            kod för att meddela admin att nåt gått snett;
        }

Ja, ungefär så. Då slipper man såna där "Could not insert search results" etc.

Finns det inte try/catch eller nåt motsvarande i php?


Edit: Jag vet inte om det ens heter "db access exception", det var bara ett påhittat namn eftersom jag inte är så nära bekant med alla inom php. :grin:
Senast redigerad av Robban_C 22:32:18, 14-08-2012, redigerad totalt 1 gång.
Användarvisningsbild
Robban_C
Fler än 500 inlägg
 
Blev medlem: 22:13:25, 11-06-2006
Ort: Norra Södermanland
Sverige
Maskintyp: Grävmaskin (larvburen)
Maskin: Volvo EC45 -06
Volvo ECR25D -17
MB-Trac 800 -86
Valtra N174D -17

Holger

#5 » 17:07:46, 19-08-2012
  • Överför markerat ord till lexikonet

Jo, det går säkerligen ... men då får man ju inget feedback alls att något går fel (som programmerare alltså).
Användarvisningsbild
Holger
Webmaster
Webmaster
 
Blev medlem: 10:54:48, 12-10-2003
Ort: Hannover
Sverige
Maskintyp: Hjullastare
Maskin: Test

Robban_C

#6 » 22:56:47, 19-08-2012
  • Överför markerat ord till lexikonet

Jo, i "catch-delen" gör man det.
Dvs om det smäller vid en db-access så gör servern nåt då men endast då, ex vis skickar ett mejl till dig (men det kan bli många mejl på en kväll), skriver nåt i en textfil på servern (som inte har nånting alls med db att göra) eller skriver nåt i en särskild tabell i db (men det är en mycket dålig lösning.

Catch-delen skulle kunna se ut ungefär så här, med pseudokod eftersom jag inte kan PHP:
Kod: Markera allt
catch (db access exception)
        {
            // Holger, ett litet felmeddelande skrivs ut:
          print "Tyvärr, nåt gick fel i kontakten med databasen. Vår admin tittar på det framöver"; 
            // Anropa funktion (metod) som loggar felet i en textfil:
          Write_To_TextFile(db access exception.exception_message)
        }



Och sen kommer den funktionen/metoden som skriver till textfil:
Kod: Markera allt
          Write_To_TextFile(String strMessage)
                   {
                      // Holger, den här funktionen/metoden skriver alltså till en textfil. Lämpligen lägger den till timestamp och felmeddelandet så att textfilen blir längre och längre. Kan "nollas" när man inte längre behöver lagra gamla felmeddelanden.
                     //Emellertid har jag inte en aning om hur den koden ser ut i PHP så det utelämnar jag helt och hållet.
                     //När den här funktionen/metoden har gjort sitt återgår alltså exekveringen dit den var innan den här funktionen/metoden anropades.
                   }


Hur rörigt det än låter så bör även skrift till textfil ligga i try/catch för att undvika problem om man har ex vis en upptagen eller skadad hårddisk men det behöver ju inte resultera i något synligt felmeddelande.
Senast redigerad av Robban_C 23:00:05, 19-08-2012, redigerad totalt 1 gång.
Användarvisningsbild
Robban_C
Fler än 500 inlägg
 
Blev medlem: 22:13:25, 11-06-2006
Ort: Norra Södermanland
Sverige
Maskintyp: Grävmaskin (larvburen)
Maskin: Volvo EC45 -06
Volvo ECR25D -17
MB-Trac 800 -86
Valtra N174D -17

Towil

#7 » 23:02:22, 19-08-2012
  • Överför markerat ord till lexikonet

Det du ser är normat inget man har på i drift. Felen loggas normalt i en fil men vid utveckling så är det enklare att få det direkt när man kör.
http://www.php.net/manual/en/errorfunc. ... lay-errors
Användarvisningsbild
Towil
Moderator
Moderator
 
Blev medlem: 20:00:40, 18-08-2007
Ort: Nybro
Sverige

Robban_C

#8 » 23:07:44, 19-08-2012
  • Överför markerat ord till lexikonet

You're strongly advised to use error logging in place of error displaying on production web sites.

Det där ger samma resultat som mitt förslag.

MEn Towil, menar du att det inte finns nåt try/catch i PHP?
Användarvisningsbild
Robban_C
Fler än 500 inlägg
 
Blev medlem: 22:13:25, 11-06-2006
Ort: Norra Södermanland
Sverige
Maskintyp: Grävmaskin (larvburen)
Maskin: Volvo EC45 -06
Volvo ECR25D -17
MB-Trac 800 -86
Valtra N174D -17

Towil

#9 » 23:22:28, 19-08-2012
  • Överför markerat ord till lexikonet

Jo, det finns i senare versioner.
http://www.php.net/manual/en/language.exceptions.php

Inget jag själv har provat. PHP är ganska förlåtande och man kan förutse det flesta fel själv. Om man bara kollar status på det som retuneras.

Det här är helt OK i php
$foo=1+"1a"
ger $foo=2
Användarvisningsbild
Towil
Moderator
Moderator
 
Blev medlem: 20:00:40, 18-08-2007
Ort: Nybro
Sverige

Robban_C

#10 » 18:09:19, 20-08-2012
  • Överför markerat ord till lexikonet

Towil skrev:Jo, det finns i senare versioner.
http://www.php.net/manual/en/language.exceptions.php

Inget jag själv har provat. PHP är ganska förlåtande och man kan förutse det flesta fel själv. Om man bara kollar status på det som retuneras.

Det här är helt OK i php
$foo=1+"1a"
ger $foo=2

Helt makalöst att sånt kan vara ok.
Det är dock på både gott och ont att det är så.

Men du menar väl så här:
ger $foo==2
Enkelt likhetstecken är (åtminstone i de flesta andra miljöer) en tilldelning, inte en jämförelse.
Dvs $foo==2 jämför om $foo har värdet 2 medan $foo=2 tilldelar värdet 2 till $foo.

Och en variabel som börjar med $ brukar väl oftast vara en sträng? Det är ju dock valfritt.
Har slutat på forumet!
Användarvisningsbild
Robban_C
Fler än 500 inlägg
 
Blev medlem: 22:13:25, 11-06-2006
Ort: Norra Södermanland
Sverige
Maskintyp: Grävmaskin (larvburen)
Maskin: Volvo EC45 -06
Volvo ECR25D -17
MB-Trac 800 -86
Valtra N174D -17

Towil

#11 » 19:15:41, 20-08-2012
  • Överför markerat ord till lexikonet

Det var en tilldelning int 1 plus string 1a blir int 2. Den gör en automatisk typ konvertering av den delen i stringen som är en siffra.
$ är att det är en variabel. Vilken typ den är av behöver man inte bry sig om.
Användarvisningsbild
Towil
Moderator
Moderator
 
Blev medlem: 20:00:40, 18-08-2007
Ort: Nybro
Sverige


Återgå till Buggar

Vilka är online

Användare som besöker denna kategori: Inga registrerade användare och 3 gäster



Älmeboda Maskinservice

OilQuick

TK Traktordelar

Klaravik

Crazyride

Bra Verktyg

Motrab

Engcon

Scandcut

Astrak

Olsson Parts

Nya och begagnade
truckar på vstruck.se