## Update ##
Ab Version 1.10 von [`pgfplots`][2] kann man sich die Schnittpunkte mit der x-Achse gleich mit berechnen lassen:
    \documentclass[margin=5mm]{standalone} 
    \usepackage{pgfplots}
    \usepgfplotslibrary{fillbetween} 
    \pgfplotsset{
      compat=1.10,% mit writeLaTeX bisher noch nicht möglich
    }
    \begin{document} 
    \begin{tikzpicture} 
    \begin{axis}[
      axis lines=middle,
      enlargelimits=0.05,
      grid,
      domain=-5.5:2.5,
      ]
      \addplot[name path=P,green]{x^2+3*x-4}; 
      \addplot[name path=X,draw=none]{0};
      % Füllung zwischen plots
      \addplot fill between[ 
        of=P and X, 
        split, % Segmente berechnen lassen, Zählung beginnt bei 0 (also gerader Zahl)
        every even segment/.style= {gray,fill opacity=0.2}, % Stil für die geraden Segmente
        every odd segment/.style={fill=none}, % Stil für die ungeraden Segmente
      ];  
    \end{axis} 
    \end{tikzpicture} 
    \end{document}
![alt text][1]
----------
Ursprüngliche Antwort:
Vielleicht ist es einfacher dafür [`pgfplots`][2] zu verwenden:
    \documentclass[margin=5mm]{standalone} 
    \usepackage{pgfplots} 
    \pgfplotsset{
      %compat=1.9,% bei Nutzung von writeLaTeX auskommentieren
      flaeche/.style={draw=none,fill=gray,fill opacity=0.2}
    }
    
    \begin{document} 
    \begin{tikzpicture} 
    \begin{axis}[axis lines=middle,enlargelimits=0.05,grid]
      \newcommand*\plotfunc{x^2+3*x-4}
      \addplot[flaeche,domain=-5.5:-4]{\plotfunc}\closedcycle; 
      \addplot[flaeche,domain=1:2.5]{\plotfunc}\closedcycle;
      \addplot[green,domain=-5.5:2.5]{\plotfunc}; 
    \end{axis} 
    \end{tikzpicture} 
    \end{document}
  [1]: http://texwelt.de/wissen/upfiles/flparabast.png
  [2]: http://www.ctan.org/pkg/pgfplots