I have been using Google Analytics for some time and unfortunately it hides the searches that have led users to click into my site.  Is there any reliable source where I could check the daily searches where my site has been printed and, if possible, clicked by users?
We have set up GA on several websites to gather information about traffic to the site. We know about the organic keywords that are displayed under the Acquisition section of the traffic report. But we have been asked to find a way to display "not provided" keywords typed in by the end user in our Google Analytics report.  Is it possible to accomplish this?
Working with IPv6 Addresses in PHP After searching around somewhat thoroughly, I noticed a slight lack of functions in PHP for handling . For my own personal satisfaction I created a few functions to help the transition.  The IPv6ToLong() function is a temporary solution to that brought up here: . It will split the IP in to two integers and return them in an array.  /**  * Convert an IPv4 address to IPv6  *  * @param string IP Address in dot notation (192.168.1.100)  * @return string IPv6 formatted address or false if invalid input  */ function IPv4To6($Ip) {     static $Mask = '::ffff:'; // This tells IPv6 it has an IPv4 address     $IPv6 = (strpos($Ip, '::') === 0);     $IPv4 = (strpos($Ip, '.') &gt; 0);      if (!$IPv4 &amp;&amp; !$IPv6) return false;     if ($IPv6 &amp;&amp; $IPv4) $Ip = substr($Ip, strrpos($Ip, ':')+1); // Strip IPv4 Compatibility notation     elseif (!$IPv4) return $Ip; // Seems to be IPv6 already?     $Ip = array_pad(explode('.', $Ip), 4, 0);     if (count($Ip) &gt; 4) return false;     for ($i = 0; $i &lt; 4; $i++) if ($Ip[$i] &gt; 255) return false;      $Part7 = base_convert(($Ip[0] * 256) + $Ip[1], 10, 16);     $Part8 = base_convert(($Ip[2] * 256) + $Ip[3], 10, 16);     return $Mask.$Part7.':'.$Part8; }  /**  * Replace '::' with appropriate number of ':0'  */ function ExpandIPv6Notation($Ip) {     if (strpos($Ip, '::') !== false)         $Ip = str_replace('::', str_repeat(':0', 8 - substr_count($Ip, ':')).':', $Ip);     if (strpos($Ip, ':') === 0) $Ip = '0'.$Ip;     return $Ip; }  /**  * Convert IPv6 address to an integer  *  * Optionally split in to two parts.  *  * @see https://stackoverflow.com/questions/420680/  */ function IPv6ToLong($Ip, $DatabaseParts= 2) {     $Ip = ExpandIPv6Notation($Ip);     $Parts = explode(':', $Ip);     $Ip = array('', '');     for ($i = 0; $i &lt; 4; $i++) $Ip[0] .= str_pad(base_convert($Parts[$i], 16, 2), 16, 0, STR_PAD_LEFT);     for ($i = 4; $i &lt; 8; $i++) $Ip[1] .= str_pad(base_convert($Parts[$i], 16, 2), 16, 0, STR_PAD_LEFT);      if ($DatabaseParts == 2)             return array(base_convert($Ip[0], 2, 10), base_convert($Ip[1], 2, 10));     else    return base_convert($Ip[0], 2, 10) + base_convert($Ip[1], 2, 10); }   For these functions I typically implement them by calling this function first:  /**  * Attempt to find the client's IP Address  *  * @param bool Should the IP be converted using ip2long?  * @return string|long The IP Address  */ function GetRealRemoteIp($ForDatabase= false, $DatabaseParts= 2) {     $Ip = '0.0.0.0';     if (isset($_SERVER['HTTP_CLIENT_IP']) &amp;&amp; $_SERVER['HTTP_CLIENT_IP'] != '')         $Ip = $_SERVER['HTTP_CLIENT_IP'];     elseif (isset($_SERVER['HTTP_X_FORWARDED_FOR']) &amp;&amp; $_SERVER['HTTP_X_FORWARDED_FOR'] != '')         $Ip = $_SERVER['HTTP_X_FORWARDED_FOR'];     elseif (isset($_SERVER['REMOTE_ADDR']) &amp;&amp; $_SERVER['REMOTE_ADDR'] != '')         $Ip = $_SERVER['REMOTE_ADDR'];     if (($CommaPos = strpos($Ip, ',')) &gt; 0)         $Ip = substr($Ip, 0, ($CommaPos - 1));      $Ip = IPv4To6($Ip);     return ($ForDatabase ? IPv6ToLong($Ip, $DatabaseParts) : $Ip); }   Someone please tell me if I'm reinventing the wheel here or I've done something wrong.  This implementation converts IPv4 to IPv6. Any IPv6 address it doesn't touch. Number of ring homomorphisms from $\mathbb Z_{12}$ to $\mathbb Z_{28}$. Question:      Find the number of non trivial ring homomorphisms from $\mathbb Z_{12}$ to $\mathbb Z_{28}$. ($f$ is not necessarily unitary, i.e., $f(1)$ need not be $1$.)    Suppose $f$ is a ring homomorphism from $\mathbb Z_{12}$ to $\mathbb Z_{28}$.  Consider $f$ as a additive group homomorphism.  Let $k= |\ker f|$ and  $ t = |\operatorname{im}(f)|$. Then $k\mid 12$ and $t\mid 24$ and $kt=12$, by first isomorphism  theorem of groups.  There are two possibilities $k=3$, $t=4$   and $k=6$, $t=2$.  For the first case $f$ should map $1$ to an element of the subgroup generated by $7$ as there is a unique subgroup of $\mathbb Z_{28}$ of order $4$ generated by $7$. For the second case $1$ has to map to $14$, for the same reasoning.  So there are at most two ring homomorphisms from $\mathbb Z_{12}$ to $\mathbb Z_{28}$. Question is how to check the possible maps which are ring homomorphisms.  Thanks. Permitting scp but not ssh - without scponly How do I put text over symbols? How do you use a variable in a regular expression? I am trying to run gedit from an SSH terminal on Windows, connected to an Amazon EC2 instance running Ubuntu 12.04 Server and I am getting this error:  Cannot open display:   How do I fix it? Some websites and textbooks refer to $$\Delta x \Delta p \geq \frac{\hbar}{2}$$ as the correct formula for the uncertainty principle whereas other sources use the formula $$\Delta x \Delta p \geq \hbar.$$ Question: Which one is correct and why?  The latter is used in the textbook "Physics II for Dummies" (German edition) for several examples and the author also derives that formula so I assume that this is not a typing error.  This is the mentioned derivation:     $\sin \theta = \frac{\lambda}{\Delta y}$      assuming $\theta$ is small:      $\tan \theta = \frac{\lambda}{\Delta y}$      de Broglie equation:      $\lambda = \frac{h}{p_x}$      $\Rightarrow \tan \theta \approx \frac{h}{p_x \cdot \Delta y}$      but also:      $\tan \theta = \frac{\Delta p_y}{p_x}$      equalize $\tan \theta$:      $\frac{h}{p_x \cdot \Delta y} \approx \frac{\Delta p_y}{p_x}$      $\Rightarrow \frac{h}{\Delta y} \approx \Delta p_y \Rightarrow \Delta p_y \Delta y \approx h$      $\Rightarrow \Delta p_y \Delta y \geq \frac{h}{2 \pi}$      $\Rightarrow \Delta p \Delta x \geq \frac{h}{2 \pi}$   So: Which one is correct and why? Removing non numeric characters from a string Deciding whether two metrics are topologically equivalent in the space $C^1([0,1])$ Consider the space $C^1([0,1])$ and the function $d:C([0,1])\times C([0,1]) \to \mathbb R$ defined as $d(f,g)=|f(0)-g(0)|+sup_{x \in [0,1]}|f'(x)-g'(x)|$. Decide whether the metrics $d$ and $d_{\infty}$ are topologically equivalent in $C^1([0,1])$ (where $d_{\infty}=sup_{x \in [0,1]}|f(x)-g(x)|)$  My attempt at a solution:  If two metrics are topologically equivalent, then they have the same convergent sequences. Honestly, I couldn't do anything. I am trying to define a sequence of functions $\{f_n\}_{n \in \mathbb N}$ such that $f_n \to f$ in, for instance, $(C^1([0,1]),d)$ but $f_n \not \to f$ in $(C^1([0,1]),d_{\infty})$. Could it be this two metrics are topologically equivalent? If this is the case, how could I prove it? If not, I would appreciate any hint to find an adequate sequence of functions that works for what I am trying to prove. I have a production server running with the following flag: -XX:+HeapDumpOnOutOfMemoryError  Last night it generated a java-38942.hprof file when our server encountered a heap error. It turns out that the developers of the system knew of the flag but no way to get any useful information from it.  Any ideas? Which one sounds better? "of mine" or "my" My friend (or "a friend of mine"?) told me that anytime I need to express such expression, it's always better to say "of mine", because it sounds more naturally.  Like "two brothers of mine" rather than "my two brothers".  Is that true? I want to create a scratch-card-like effect in new Unity UI's new Image tag.  I know it's possible with setPixels, but that's prohibitively expensive on mobile devices.  Something like this:    I'd like the user to be able to drag on any part of the image to "scratch off" the top layer and reveal the content underneath it.  How can I do this? Why can't I log into minecraft with a mojang account? Is it safe to eat potatoes that have sprouted? I'm talking about potatoes that have gone somewhat soft and put out shoots about 10cm long.   Other online discussions suggest it's reasonably safe and the majority of us have been peeling and eating soft sprouty spuds for years. Is this correct? My first issue was when I tried to apt-get update or apt-get upgrade. On upgrade I get the following error:  You might want to run 'apt-get -f install' to correct these. The following packages have unmet dependencies: linux-image-server : Depends: linux-image-3.2.0-27-generic but it is not installed E: Unmet dependencies. Try using -f.   I tried running apt-get install -f and this was the output(after saying yes on prompt)  (Reading database ... 186183 files and directories currently installed.) Unpacking linux-image-3.2.0-27-generic (from .../linux-image-3.2.0-27-generic_3.2.0-27.43_amd64.deb) ... Done. dpkg: error processing /var/cache/apt/archives/linux-image-3.2.0-27-generic_3.2.0-27.43_amd64.deb (--unpack):  failed in write on buffer copy for backend dpkg-deb during `./boot/System.map-3.2.0-27-generic': No space left on device  No apport report written because the error message indicates a disk full error                                                                           dpkg-deb:    error: subprocess paste was killed by signal (Broken pipe) Examining /etc/kernel/postrm.d . run-parts: executing /etc/kernel/postrm.d/initramfs-tools 3.2.0-27-generic   /boot/vmlinuz-3.2.0-27-generic run-parts: executing /etc/kernel/postrm.d/zz-update-grub 3.2.0-27-generic /boot/vmlinuz-3.2.0-27-generic Errors were encountered while processing: /var/cache/apt/archives/linux-image-3.2.0-27-generic_3.2.0-27.43_amd64.deb E: Sub-process /usr/bin/dpkg returned an error code (1)   I tried running apt-get autoremove and it gives me the same error as apt-get upgrade.  When I run df, I get this for /boot:  /dev/sda1                    233191     230297         0 100% /boot   So, I read elsewhere that I should try to purge old kernels. I checked for what kernels I had with:  $ dpkg -l linux-image-\* | grep ^ii ii  linux-image-2.6.38-13-server  2.6.38-13.52  Linux kernel image for version 2.6.38 on x86_64 ii  linux-image-3.0.0-13-server   3.0.0-13.22   Linux kernel image for version 3.0.0  on x86_64 ii  linux-image-3.0.0-14-server   3.0.0-14.23   Linux kernel image for version 3.0.0  on x86_64 ii  linux-image-3.0.0-15-server   3.0.0-15.26   Linux kernel image for version 3.0.0  on x86_64 ii  linux-image-3.0.0-16-server   3.0.0-16.29   Linux kernel image for version 3.0.0  on x86_64 ii  linux-image-3.0.0-17-server   3.0.0-17.30   Linux kernel image for version 3.0.0  on x86_64 ii  linux-image-3.2.0-24-generic  3.2.0-24.39   Linux kernel image for version 3.2.0  on 64 bit x86 SMP ii  linux-image-3.2.0-25-generic  3.2.0-25.40   Linux kernel image for version 3.2.0  on 64 bit x86 SMP ii  linux-image-3.2.0-26-generic  3.2.0-26.41   Linux kernel image for version 3.2.0  on 64 bit x86 SMP   When I try to remove the oldest with this:  $ sudo apt-get purge linux-image-2.6.38-13-server Reading package lists... Done Building dependency tree Reading state information... Done You might want to run 'apt-get -f install' to correct these: The following packages have unmet dependencies: linux-image-server : Depends: linux-image-3.2.0-27-generic but it is not going to be     installed E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).   How can I free up or extend boot without messing up my installation? Today I came across an OBVIOUSLY good answer in /review. It had 7 upvotes, contained lists, paragraphs of explanation, and well-applied sample code. It was also moderately long. How does a question like this get flagged for review? I don't really know how the algorithm works.   If this is low-quality then I feel bad about all of my answers.  Here's a  if you care to see it in context. It's not really a huge problem (as Bart's comment emphasizes), but this seems like an extreme outlier in every measurable aspect. Prove no solution to $x^2\equiv3\bmod5$ Show that there is no solution to the congruence $x^2\equiv3\bmod5$.   I'm not sure if the fact that the only numbers divisible by $5$ are those ending in $0$ or $5$ will help&hellip; I want to switch to French locale. So I tried the below command:  myUbundu@myUbundu-desktop:~$ export LC_ALL=fr_FR   But I am getting the warning  -bash: warning: setlocale: LC_ALL: cannot change locale (fr_FR)   How to set the locale to French? Do I need to install additional packages? Why does speed of light have to be constant? I want the QED symbol to be 1 line lower at the end of proof