Steve Jobs is Dead

Well, it’s official — Steve Jobs is dead. Not a huge surprise to everyone with him recently stepping down as CEO, but certainly a game changing event in the tech industry. Known to many as a visionary, to some the leader of a cult, whatever you consider the main to have been you can’t deny his incredible contributions to the industry. With Apple’s new CEO Tim Cook failing to impress many of Apple’s following and this recent blow one can’t help but wonder what is in store for this booming company.

I’m truly saddened to learn of Steve Jobs’ death. Melinda and I extend our sincere condolences to his family and friends, and to everyone Steve has touched through his work. Steve and I first met nearly 30 years ago, and have been colleagues, competitors and friends over the course of more than half our lives. The world rarely sees someone who has had the profound impact Steve has had, the effects of which will be felt for many generations to come. For those of us lucky enough to get to work with him, it’s been an insanely great honor. I will miss Steve immensely.
-Bill Gates


Job’s dominance in the market stretched out well beyond that of Apple. He owned considerable shares in Disney after it’s acquisition of Pixar for which we can thank for making digital animation what it is today. With over 100 million people owning an iPhone and numerous other gadgets such as the iMac, iPod, AppleTV or the MacBook his legacy can be found world wide, piece by piece in everyone’s homes.

But what will become of what he has left behind? Will Apple continue to push forward with new technologies that continue to redefine the market? Will Tim Cook be able to develop the same cult like following in America’s youth? Or will Apple once again fade away into just a memory? Although I have never been the biggest fan of Apple, and can often quite vocal about my distaste for some of their practices, I hope that Cook does manage to do what Jobs has done, and hopefully even more. The more super powers we have in the tech industry the more competition there is, the more growth there is, and the more fun gadgets and services there are for all of us peons out there to play with.

Currently Apple’s site is quite displaying a picture of Jobs with the years 1955-2011 written next to it. After clicking the image one is presented with the following text:

Apple has lost a visionary and creative genius, and the world has lost an amazing human being. Those of us who have been fortunate enough to know and work with Steve have lost a dear friend and an inspiring mentor. Steve leaves behind a company that only he could have built, and his spirit will forever be the foundation of Apple.

These are the words of his successor, Tim Cook, who now holds the reins in his hands.

Tags: , , ,

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • Twitter
  • RSS
read comments

Ajax – Post Multiple Select Values

So this form is pretty basic, it has a select box (list box) filled with possible values. You can select all or some of the values and then submit it to the server via Ajax. The problem was when I grabbed the value from the select box I only got the last value selected, not each. Regardless of if I was using POST or GET I still had to build the parameter list since that’s how XMLHttpRequest works. So I looped through the list and tried using the same parameter name for each, then on the PHP end I had the same result — each parameter overwrote the previous one and I saw only the last result. It wasn’t until I stumbled upon this post that someone gave a decent suggestion, which was to put a [] at the end of each parameter name when building the query string and PHP would automatically interpret it as an array. Since his code was somewhat over complicated I thought I’d share my version of it:

test-utility.php

<html>
<head>
    <title>Test Utility</title>
    <script type="text/javascript" src="test-utility.js">	</script>
</head>
<body>
    <h1 align='center'>Test Utility</h1>

<center>

    <p style="width:450px; text-align:justify;<?php if($error) echo "color:red;" ?>">
        <?php if($error) { ?>
            <strong>Error:</strong> <?php echo $error; ?>
        <?php } ?>
    </p>

    <form name='frmTestUtility' id='frmTestUtility' method='post' action=''>
    <table cellpadding="2" cellspacing="2" border="0">
    <tr>
        <td>
            Listbox(s):<br><br>
            <div style="font-size:smaller">(Hold CTRL to<br>select multiple)</div>
        </td>
        <td align="center">
            <select name='listbox[]' id='listbox' multiple="multiple">
                <option value='123'>123</option>
                <option value='abc'>abc</option>
                <option value='alpha'>alpha</option>
                <option value='beta'>beta</option>
                <option value='gamma'>gamma</option>
            </select>
            <br>
            <input type="button" name="all" value="All" onClick='javascript:select_all();'>
            <input type="button" name="none" value="None" onClick='javascript:select_none();'>
        </td>
    </tr>
    <tr>
        <td colspan="2">
            <input type="button" name="submit" onclick="javascript:run_queries();" value="Run SQL" />
        </td>
    </tr>
    </table>
    </form>

    <div id="ajax_results">
        &nbsp;
    </div>
    </center>
</body>
</html>

test-utility.js

function select_all() {
    var d = document.getElementById("listbox");
        for(var i=0;i<d.length;i++) {
            d.options[i].selected = "1";
        }
}

function select_none() {
    var d = document.getElementById("listbox");

    for(var i=0;i<d.length;i++) {
        d.options[i].selected = "";
    }
}

// Build the query string and submit it to the next page for processing
function run_queries() {
    var xmlhttp, url;</pre>

    // For modern browsers
    if(window.XMLHttpRequest) {
        xmlhttp = new XMLHttpRequest();

    // for IE 5/6
    } else {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }

    //  Rebuild the array of selected option boxes
    lb = document.getElementById("listbox");
    for(var i=0; i < lb.length; i++) {
        if(lb[i].selected) {
            // Note the [] after the name
            url += "&lb[]=" + lb[i].value;
        }
    }

    xmlhttp.open("GET","test-utility-ajax.php" + url, false);
    xmlhttp.send();

    if (xmlhttp.status == 200) {
        document.getElementById("ajax_results").innerHTML = xmlhttp.responseText;
    } else {
        return false;
    }

    return false;
}

test-utility-ajax.phpbr>

<?php
  // As you can see PHP displays it as an array
  if($_POST} print_r($_POST);
?>

Tags:

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • Twitter
  • RSS
read comments

Download MSINET.OCX

Have an old Visual Basic 6 legacy application that is demanding MSINET.OCX in order to run?. Here is a copy of Microsoft’s redistributable run time file for VB6:

Download MSINET.OCX

After you have downloaded the file, you can either place it in your C:\Windows\System32 (or C:\Windows\SysWow64 on an x64 system) and register it there or you may want to put it directly into your application’s directory and create a .local file so that the application does not look beyond it’s own folder for the file.

To register the file, open up command prompt (Win+R then cmd) and enter:

regsvr32 "C:\Windows\System32\MSINET.OCX"

If you are going to use the .local file, just create an empty text file in that directory with the same name as your application but a .local extension appended. So for example if you had a file called “MyApp.exe” you would create an empty text file called “MyApp.exe.local” Make sure if you have hidden extensions that it is not secretely adding “.txt” to the end of the file name.

Tags: , , ,

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • Twitter
  • RSS
read comments
 Page 4 of 51  « First  ... « 2  3  4  5  6 » ...  Last »