Hey Mercury Filter,
first thing I see is:
you are using sizeof(verticies) and sizeof(elements) this returns the size of a pointer.
You should be using something like sizeof(float)*15 (15 Floats for verticies) and sizeof(float)*3 (3 Floats for elements)
You also can use a vector for this (i like doing that )
Which would result in something like that:
glBufferData(GL_ARRAY_BUFFER, sizeof(vertice_vector)*vertice_vector.size(), &vertice_vector, GL_STATIC_DRAW);