ZiZe
-
Innlegg
49 -
Ble med
-
Besøkte siden sist
Innholdstype
Profiler
Forum
Hendelser
Blogger
Om forumet
Innlegg skrevet av ZiZe
-
-
Joda, man kan, men saken er at jeg har mange prosjekter allerede som er utviklet i php4, som jeg gjerne skulle kunne drevet vedlikehold på, og drive å skifte navn på filene overalt er heller mer upraktisk.
Men har lest en del rundt nå og tror eneste løsningen jeg kan gå for er 2 stk apache install.
-
Har fått satt opp en ny boks her hjemme til testing, utvikling og leking.
har satt opp 2 virtual hosts på hver sin ip.
server1 10.0.0.100
server2 10.0.0.101
Er det mulig og laste inn feks. php4 i server1 sin virtual host definisjon og php5 i server2 sin?
Eller må jeg rett og slett gå for 2 apache installs?
vet jeg kan bruke feks. libapachephp5-mod og php4-cgi, og bruke .php4 til php4 scripts og .php til php5, men dette er ikke en optimal løsning for min del.
*leter videre gjennom den store mørke veven*
-
Edit: la til en sjekk etter og ha lest litt om skuddår
Mitt bidrag:
www.zize.org/dabear_challenges/challenge1.php
Klikk for å se/fjerne innholdet nedenforPHP<form method="POST" action="<?= $_SERVER['PHP_SELF']; ?>" >
<input type="text" name="year" value="" >
<input type="submit" name="checkYear" value="Sjekk årstall" >
</form>
<hr>
<?php
$nowY = sprintf('%d', $_POST['year']);
if($nowY > 0)
{
if(substr($nowY, strlen($nowY)-2, 2) == '00' && $nowY % 400 == 0)
echo $nowY .' er ett skuddår!';
elseif(($year % 4) === 0 && substr($nowY, strlen($nowY)-2, 2) != '00')
echo $nowY .' er ett skuddår!';
else
echo $nowY .' er ikke ett skuddår.. :\'(';
}
else
echo 'Skriv inn ett årstall som ett positivt heltall';
?>
men date('L', mktime(0,0,0,2,0,$year)); vil være enkelere hvertfall
Klikk for å se/fjerne innholdet nedenforPHP<form method="POST" action="<?= $_SERVER['PHP_SELF']; ?>" >
<input type="text" name="year" value="" >
<input type="submit" name="checkYear" value="Sjekk årstall" >
</form>
<hr>
<?php
$nowY = sprintf('%d', $_POST['year']);
if($nowY > 0)
{
if(date('L', mktime(0, 0, 0, 2, 0, $nowY)) == 1)
echo $nowY .' er ett skuddår!';
else
echo $nowY .' er ikke ett skuddår.. :\'(';
}
else
echo 'Skriv inn ett årstall som ett positivt heltall';
echo '<hr>';
//kortere måte og gjøre det på
if($nowY > 0)
echo $nowY . ($nowY > 0 && date('L', mktime(0,0,0,2,0,$nowY)) == 1 ? ' er ett skuddår!':' er ikke ett skuddår.. :\'(');
else
echo 'Skriv inn ett årstall som ett positivt heltall';
?>
-
tror ikke jeg kommer til og gjøre så mye nes programmering med det første da man har andre ting og gjøre, men helt klart genialt og lese litt om det tekniske bak vidunderet som tok jomfrudommen min en gang for 16-17 år siden.
ahh, the memories
Er nok del 1 som er den mest interessante for meg men håper det kommer mer her.
takker
-
Takker og bukker
-
jeg vil da si at denne, og mange andre topics i dette forumet heller skulle vært postet under de passende subforumene av Programvare
-
hehe, tviler på at eggene ligger der
"picture taken @ 18:23:01 06.06.2006"
Men morsom sak du har lagd der
Gjettet en del ganger selv men klarte aldri og finne rett nummer, var nær dog, mener jeg tippet 2556 en gang (2549)
Alltid gøy og se på de meningsløse tingen man klarer og lyre av seg med litt god fantasi
-
Jeg fant tak i noen som hadde en phpinfo() side liggende på servetheworld, og de har ikke kompilert php med "--enable-cli" som jeg skrev i mitt første innlegg.
eneste mulighetene jeg ser da, er at du må bruke det slik du hadde først, med "30 * * * * wget -q http://hjemmesidenmin.com/diverse/diversejob.php" eller skriver det i et annet scriptspråk som støtter command line tolking.
-
http://www.debianguiden.dk/dists/stable/html/ftp-server.html
her er en rimelig grei guide til proftpd.
finner også en del andre greie guider for debian der.
ser btw ikke hva dette har med programmering og gjøre?
-
Heisann.
Det jeg mener er at du må legge til den linjen der øverst i alle scriptene dine som skal kalles opp via crontaben.
/usr/bin/php er da stien til php.
så legg til
#!/usr/bin/php i toppen av alle php scriptene du bruker som cron tasks.
dette _må_ stå helt øverst i php filen, over <?php.
sampleCron.php
#!/usr/bin/php <?php //mitt cronscript $mailTo = '[email protected]'; $mailSubject = 'En testmail'; $mailFrom = '[email protected]'; $mailBody = "En testmail \r\n"; $mailbody.= date("H:i:s d/m/Y, time()) ."\r\n"; mail($mailTo, $mailSubject, $mailBody, "From: ". $mailFrom ."\r\n"); ?>
chmod +x sampleCron.php
så skal alt funke fint.
en ting til jeg vil anbefale er og plassere cron task scriptene utenfor webpath så ikke hvem som helst kan kalle dem opp.
chmod +x <script>.php på alle cron task scriptene, dette gjør du da via terminalen når du har ssh'et inn til serveren.
<> skal ikke være med.
-
forandre cronscriptene dine slik at du har
#!/usr/bin/php <?php //kode her ?>
og
kjører en "chmod +x " på alle cronscriptene skal dette fungere uten at noe er galt i crontaben din.
Har du kompilert kjernen uten "--enable-cli" må du rekompilere med dette valget.
Har du bare installert en ferdig binary er dette valget default så da er alt bra.
-
jeg ser ikke problemet, du har nå antageligvis kjøpt deg en gratis enveisbillett til får-ikke-røre-vaskemaskinen-igjen-noen-sinne-land
-
http://www.webmasterstop.com/48-5.html
der er en guide, bare hopp over de 2 siste stegene med mindre du trenger dem.
-
dum di dam, lagt inn php?
-
Der ja, takker for all hjelp
Her bruker jeg GetWindowRect mest bare for og sammenligne debug outputen jeg fikk, for og skjønne litt mer hvorfor den registrerte noen fullscreen programmer, mens ikke andre
findProcs.cs
using System; using System.Runtime.InteropServices; using System.Threading; using System.Diagnostics; using System.Text; using System.Windows.Forms; namespace Fullscreen { public class findProc { private Thread wThread = null; public findProc() { wThread = new Thread(new ThreadStart(workerThread)); wThread.Start(); } private void workerThread() { IntPtr hwnd; IntPtr hwndTL; IntPtr hwndBR; POINT pTl; POINT pBr; RECT winRect; string pName = ""; Debug.WriteLine("Starting debug:", "start"); while(true) { hwnd = GetForegroundWindow(); if( hwnd.Equals(IntPtr.Zero) || hwnd == Process.GetCurrentProcess().MainWindowHandle || !IsWindow(hwnd) ) { Thread.Sleep(1000); continue; } pTl = new POINT(Screen.PrimaryScreen.Bounds.Left, Screen.PrimaryScreen.Bounds.Top); pBr = new POINT(Screen.PrimaryScreen.Bounds.Right - 1, Screen.PrimaryScreen.Bounds.Bottom - 1); hwndTL = WindowFromPoint(pTl); hwndBR = WindowFromPoint(pBr); GetWindowRect(hwnd, out winRect); foreach(Process pp in Process.GetProcesses()) { if(pp.MainWindowHandle == hwnd) { pName = pp.ProcessName; break; } } if(hwnd == hwndTL && hwnd == hwndBR) { Debug.WriteLine(pTl.ToString(), "TopLeft"); Debug.WriteLine(pBr.ToString(), "BottomRight"); Debug.WriteLine(winRect.ToString(), "window size"); Debug.WriteLine("Vi har et fullscreen window ("+ pName +")", "Fullscreen"); } else { //Debug.WriteLine("Vi har ikke et fullscreen window ("+ pName +")", "Normal"); Thread.Sleep(1000); continue; } Debug.Flush(); Thread.Sleep(2000); } } //www.pinvoke.net/default.aspx/user32/IsWindow.html [DllImport("user32.Dll")] private static extern bool IsWindow(IntPtr hWnd); //www.pinvoke.net/default.aspx/user32/GetForegroundWindow.html [DllImport("user32.Dll")] private static extern IntPtr GetForegroundWindow(); //www.pinvoke.net/default.aspx/user32.WindowFromPoint [DllImport("user32.dll")] static extern IntPtr WindowFromPoint(POINT Point); //www.pinvoke.net/default.aspx/user32/GetWindowRect.html [DllImport("user32.dll")] static extern bool GetWindowRect(IntPtr hWnd, out RECT lpRect); } }
Structs.cs
using System; using System.Runtime.InteropServices; namespace Fullscreen { [StructLayout( LayoutKind.Sequential )] public struct POINT { public int X; public int Y; public POINT( int x, int y ) { this.X = x; this.Y = y; } public static implicit operator System.Drawing.Point( POINT p ) { return new System.Drawing.Point( p.X, p.Y ); } public static implicit operator POINT( System.Drawing.Point p ) { return new POINT( p.X, p.Y ); } public override string ToString() { return String.Format("X: {0} Y: {1} ", X, Y); } } [Serializable, StructLayout(LayoutKind.Sequential)] public struct RECT { public int Left; public int Top; public int Right; public int Bottom; public override string ToString() { return string.Format("Top:{0}, Left:{1}, Right:{2}, Bottom:{3}", Top, Left, Right, Bottom); } } }
-
Beste du gjør er nok og hente verdiene ut av databasen og sammenligne, for så å bygge opp sql spørringen din derifra.
Har selv opplevd at man får en mysql error hvis du prøver og oppdatere en rad med eksakt samme data som er der fra før.
-
Heisann og takker for svar
Har testet litt nå, og dette funker fint mot vanlige windows programmer, sant som du sier at internet explorer viser 1 pixel større alle veier.
men når jeg tester dette mot fullscreen applikasjoner, spill feks, så viser den noe helt galt.
bruker denne klassen i en console application.
postet hele klassen jeg bruker, men det er i metoden checkProc() all action foregår.
tester med spillet "Soldat".
jeg merket og at GetForegroundWindow() ikke registrerer noe hvis soldat som jeg testet med var foreground window, funker visst bare med vanlige windows forms.
her er da output fra console applikasjonen
Screen bounds: (firefox maximized)Top: 0, Left: 0, Bottom: 864, Right: 1152
Process: firefox
Top: -4, Left: -4, Bottom: 808, Right: 1156
____________________________________
Screen bounds: (firefox fullscreen)
Top: 0, Left: 0, Bottom: 864, Right: 1152
Process: firefox
Top: 0, Left: 0, Bottom: 864, Right: 1152
____________________________________
Screen bounds: (soldat fullscreen)
Top: 0, Left: 0, Bottom: 864, Right: 1152
Process: Soldat
Top: 432, Left: 576, Bottom: 432, Right: 576
____________________________________
som man ser her, så er visst ikke spill vinduet 1*1 pixel en gang?
using System; using System.Runtime.InteropServices; using System.Diagnostics; using System.Drawing; using t = System.Threading; using f = System.Windows.Forms; namespace ConsoleApplication1 { public class fullscreen { private t.Thread checkThread = null; public fullscreen() { checkThread = new t.Thread(new t.ThreadStart(this.threadStart)); } //disse brukes av main metoden i console programmet for og styre threaden public void Start() { checkThread.Start(); } public void Stop() { checkThread.Abort(); } public void Suspend() { checkThread.Suspend(); } public void Resume() { checkThread.Resume(); } private void threadStart() { while(true) { this.checkProc(); t.Thread.Sleep(5000); } } //her er da metoden som sjekker vinduet som er øverst i Z-orderen private void checkProc() { IntPtr hwnd = GetForegroundWindow(); RECT hwndRect; foreach(Process pp in Process.GetProcesses()) { if(pp.ProcessName.ToLower() == "soldat" || pp.ProcessName.ToLower() == "firefox") { Rectangle scrRect = f.Screen.PrimaryScreen.Bounds; Console.WriteLine("Screen bounds:"); printRect(scrRect); GetWindowRect(pp.MainWindowHandle, out hwndRect); Console.WriteLine("Process: {0}", pp.ProcessName); printRect(hwndRect); Console.WriteLine("____________________________________\r\n"); break; } } } private void printRect(Rectangle rect) { Console.WriteLine("Top: {0}, Left: {1}, Bottom: {2}, Right: {3}", rect.Top, rect.Left, rect.Bottom, rect.Right); } private void printRect(RECT rect) { Console.WriteLine("Top: {0}, Left: {1}, Bottom: {2}, Right: {3}", rect.Top, rect.Left, rect.Bottom, rect.Right); } // Import og signaturer til de win32 api kallene vi trenger [DllImport("user32.dll")] private static extern IntPtr GetForegroundWindow(); [DllImport("user32.dll")] private static extern bool GetWindowRect(IntPtr hWnd, out RECT lpRect); } [Serializable, StructLayout(LayoutKind.Sequential)] public struct RECT { public int Left; public int Top; public int Right; public int Bottom; } }
-
Jeg har noen idèer til et program jeg skal prøve meg på, men står litt fast og tenke å se om kansje noen her hadde noen tips.
En av funksjonene i programmet skal værtfall kunne sjekke om man kjører ett fullscreen program, og vilken prosess dette er.
jeg har gått gjennom hele msdn (nesten ) og google så krampene i fingrene snart tar knekken på meg
Siden jeg ikke fant noenting som kan hjelpe meg i .net rammeverket har jeg gått over på og søke gjennom unmanaged api calls (platform invoke).
her er dll filene og signaturene jeg har prøvd så langt:
// Returnerer en IntPtr til handle til vinduet/prosessen som er øverst i "the Z-order"
// ifølge msdn
[DllImport("user32.dll")]
static extern IntPtr GetForegroundWindow();
// Denne tar imot en handle til prosessen/vinduet
// og sjekker om vinduet er maximized.
[DllImport("user32.dll")]
private static extern bool IsZoomed(IntPtr hWnd);
så jeg lagde en test, med en timer og et kall til en funksjon som kjørte
brukte GetForegroundWindow(), brukte IntPtr for og matche mot <Process>.Handle i en for loop, fant den matchende prosessen, og returnerer prosessnavnet og en indikasjon på om vinduet er min eller maks i en string.
men det virker ikke som at IsZoomed tar fullscreen programmer som maximized, for den returnerer om jeg starter feks. cs.
hl - minimized
og jeg kjører cs fullscreen seff
Så nå lurer jeg på om noen har vært borti noe lignende før?
-
tja, nå vet jeg ikke hva som er default i mysql5, men hvis den ikke trenger det, så disable remote logins.
-
SQL spørring for og hente informasjon om tabeller:
SHOW TABLE STATUS FROM db_navn LIKE 'tabell_navn'
denne vil hente ut en del kolonner med informasjon om "tabellnavn", hvor det du er interessert i er feltene 'Data_length' og 'Index_length'.
SHOW TABLE STATUS FROM db_navn LIKE 'tabell_%'
gir deg en rad for hver tabell den finner.
"FROM db_navn" og "LIKE 'noeher' " er optional, er de ikke med bruker de databasen du er tilkoblet og henter info om alle tabellene
denne gir deg tabellnavn og størrelse
<?php $dbLink = mysql_connect('host', 'user', 'password'); mysql_select_db('db_navn', $dbLink); $query = "SHOW TABLE STATUS FROM mysql"; $result = mysql_query($query); while($statusRader = mysql_fetch_array($result)) { $totalSize = $statusRader['Data_length'] + $statusRader['Index_length']; echo 'tabellnavn: '. $statusRader['Name'] .'<br>'; echo 'Størrelse: '. $totalSize .'<hr>'; } ?>
gir:
tabellnavn: columns_priv Størrelse: 1024 tabellnavn: db Størrelse: 3225 tabellnavn: func Størrelse: 1024 tabellnavn: host Størrelse: 1024 tabellnavn: tables_priv Størrelse: 1024 tabellnavn: user Størrelse: 2340
og denne skulle vel egentlig vært i databaser forumet?
-
500kbps ut holder ikke til 11 spillere nei.
husker ikke helt, men mener steam sitt FAQ system sier man bør regne 128kpbs ut pr. spiller for en ok server.
uansett så vil man bare få drittservere på private linjer, med mindre du har god uthastighet og setter opp en egen router som prioriterer pakkene til og fra serveren din over vanlig surfing og nedlasting.
-
vel, nå er de filene du har fått faktisk databasen din.
de tre filene som mysql bruker til databasen din.
tviler på at du har ssh tilgang til webserveren hos stw, så du kan alltids bare installere mysql på din personlige pc, lag en database med akkurat samme navn som den du skal gjennoprette, stoppe mysql, gå inn i mysql folderen og finn mappa som har FRM, MYD og MYI til databasen, slett disse og legg inn de som stw har sendt til deg
start mysql og du ska nå kunne dumpe ut sql scriptet fra databasen
-
iss lokalt:
gå til "legg til/fjern programmer"
så går du på
"legg til/fjern windows komponenter"
der inne kan du legge inn iss, sålenge du har windows cden for hånden.
mener dette skal funke for xp home og.
-
helt rett, bare litt dårlig formulert fra min side, saken er at bruker du ob_start og header lengre ned i koden vil fortsatt php koden din før header callen bli kjørt før du redirecter.
jeg regner med det er det trådstarter er interessert i.
De mest latterlige Idol auditionene.
i TV-serier og -programmer
Skrevet